8225372: accessibility errors in tables in java.desktop files

Reviewed-by: aivanov
This commit is contained in:
Sergey Bylokhov 2019-09-09 12:23:22 -07:00
parent d05b24b3f4
commit f3778ba355
32 changed files with 724 additions and 683 deletions

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2014, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -92,11 +92,10 @@ import java.util.Hashtable;
* Here is an example of five buttons in an applet laid out using
* the {@code BorderLayout} layout manager:
* <p>
* <img src="doc-files/BorderLayout-1.gif"
* alt="Diagram of an applet demonstrating BorderLayout.
* Each section of the BorderLayout contains a Button corresponding to its position in the layout, one of:
* North, West, Center, East, or South."
* style="float:center; margin: 7px 10px;">
* <img src="doc-files/BorderLayout-1.gif" alt="Diagram of an applet
* demonstrating BorderLayout. Each section of the BorderLayout contains a
* Button corresponding to its position in the layout, one of: North, West,
* Center, East, or South." style="margin: 7px 10px;">
* <p>
* The code for this applet is as follows:
*

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2015, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -40,8 +40,8 @@ import javax.accessibility.*;
* depicts three views of a "{@code Quit}" button as it appears
* under the Solaris operating system:
* <p>
* <img src="doc-files/Button-1.gif" alt="The following context describes the graphic"
* style="float:center; margin: 7px 10px;">
* <img src="doc-files/Button-1.gif" alt="The following context describes the
* graphic" style="margin: 7px 10px;">
* <p>
* The first view shows the button as it appears normally.
* The second view shows the button

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2015, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -52,8 +52,8 @@ import javax.accessibility.*;
* This image depicts the check boxes and grid layout
* created by this code example:
* <p>
* <img src="doc-files/Checkbox-1.gif" alt="The following context describes the graphic."
* style="float:center; margin: 7px 10px;">
* <img src="doc-files/Checkbox-1.gif" alt="The following context describes the
* graphic." style="margin: 7px 10px;">
* <p>
* The button labeled {@code one} is in the "on" state, and the
* other two are in the "off" state. In this example, which uses the

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2014, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -46,9 +46,9 @@ package java.awt;
* <p>
* This image depicts the check box group created by this example:
* <p>
* <img src="doc-files/CheckboxGroup-1.gif"
* alt="Shows three checkboxes, arranged vertically, labeled one, two, and three. Checkbox one is in the on state."
* style="float:center; margin: 7px 10px;">
* <img src="doc-files/CheckboxGroup-1.gif" alt="Shows three checkboxes,
* arranged vertically, labeled one, two, and three. Checkbox one is in the on
* state." style="margin: 7px 10px;">
*
* @author Sami Shaio
* @see java.awt.Checkbox

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -52,7 +52,7 @@ import sun.awt.AWTAccessor;
* <img src="doc-files/MenuBar-1.gif"
* alt="Menu labeled Examples, containing items Basic, Simple, Check, and More
* Examples. The Check item is a CheckBoxMenuItem instance, in the off state."
* style="float:center; margin: 7px 10px;">
* style="margin: 7px 10px;">
* <p>
* The item labeled {@code Check} shows a check box menu item
* in its "off" state.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2015, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -51,8 +51,8 @@ import javax.accessibility.*;
* After this choice menu has been added to a panel,
* it appears as follows in its normal state:
* <p>
* <img src="doc-files/Choice-1.gif" alt="The following text describes the graphic"
* style="float:center; margin: 7px 10px;">
* <img src="doc-files/Choice-1.gif" alt="The following text describes the
* graphic" style="margin: 7px 10px;">
* <p>
* In the picture, {@code "Green"} is the current choice.
* Pushing the mouse button down on the object causes a menu to

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -54,7 +54,7 @@ import java.io.IOException;
* <p>
* <img src="doc-files/FlowLayout-1.gif"
* ALT="Graphic of Layout for Three Buttons"
* style="float:center; margin: 7px 10px;">
* style="margin: 7px 10px;">
* <p>
* Here is the code for this applet:
*

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2015, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -83,10 +83,10 @@ import sun.awt.SunToolkit;
* of the primary screen in the virtual device, negative coordinates
* are possible, as shown in the following figure.
* <p>
* <img src="doc-files/MultiScreen.gif"
* alt="Diagram of virtual device encompassing three physical screens and one primary physical screen. The primary physical screen
* shows (0,0) coords while a different physical screen shows (-80,-100) coords."
* style="float:center; margin: 7px 10px;">
* <img src="doc-files/MultiScreen.gif" alt="Diagram of virtual device
* encompassing three physical screens and one primary physical screen. The
* primary physical screen shows (0,0) coords while a different physical screen
* shows (-80,-100) coords." style="margin: 7px 10px;">
* <p>
* In such an environment, when calling {@code setLocation},
* you must pass a virtual coordinate to this method. Similarly,

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2018, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -116,64 +116,49 @@ import java.util.Arrays;
* <dt>{@link GridBagConstraints#anchor}
* <dd>Specifies where the component should be positioned in its display area.
* There are three kinds of possible values: absolute, orientation-relative,
* and baseline-relative
* and baseline-relative.
* Orientation relative values are interpreted relative to the container's
* {@code ComponentOrientation} property while absolute values
* are not. Baseline relative values are calculated relative to the
* baseline. Valid values are:
*
* <table class="striped" style="margin: 0px auto">
* <caption>Absolute, relative and baseline values as described above</caption>
* <thead>
* <tr>
* <th><p style="text-align:center">Absolute Values</th>
* <th><p style="text-align:center">Orientation Relative Values</th>
* <th><p style="text-align:center">Baseline Relative Values</th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td>
* <ul style="list-style-type:none">
* <li>{@code GridBagConstraints.NORTH}</li>
* <li>{@code GridBagConstraints.SOUTH}</li>
* <li>{@code GridBagConstraints.WEST}</li>
* <li>{@code GridBagConstraints.EAST}</li>
* <li>{@code GridBagConstraints.NORTHWEST}</li>
* <li>{@code GridBagConstraints.NORTHEAST}</li>
* <li>{@code GridBagConstraints.SOUTHWEST}</li>
* <li>{@code GridBagConstraints.SOUTHEAST}</li>
* <li>{@code GridBagConstraints.CENTER} (the default)</li>
* <ul>
* <li>Absolute Values:
* <ul>
* <li>{@code GridBagConstraints.NORTH}
* <li>{@code GridBagConstraints.SOUTH}
* <li>{@code GridBagConstraints.WEST}
* <li>{@code GridBagConstraints.EAST}
* <li>{@code GridBagConstraints.NORTHWEST}
* <li>{@code GridBagConstraints.NORTHEAST}
* <li>{@code GridBagConstraints.SOUTHWEST}
* <li>{@code GridBagConstraints.SOUTHEAST}
* <li>{@code GridBagConstraints.CENTER} (the default)
* </ul>
* <li>Orientation Relative Values:
* <ul >
* <li>{@code GridBagConstraints.PAGE_START}
* <li>{@code GridBagConstraints.PAGE_END}
* <li>{@code GridBagConstraints.LINE_START}
* <li>{@code GridBagConstraints.LINE_END}
* <li>{@code GridBagConstraints.FIRST_LINE_START}
* <li>{@code GridBagConstraints.FIRST_LINE_END}
* <li>{@code GridBagConstraints.LAST_LINE_START}
* <li>{@code GridBagConstraints.LAST_LINE_END}
* </ul>
* <li>Baseline Relative Values:
* <ul>
* <li>{@code GridBagConstraints.BASELINE}
* <li>{@code GridBagConstraints.BASELINE_LEADING}
* <li>{@code GridBagConstraints.BASELINE_TRAILING}
* <li>{@code GridBagConstraints.ABOVE_BASELINE}
* <li>{@code GridBagConstraints.ABOVE_BASELINE_LEADING}
* <li>{@code GridBagConstraints.ABOVE_BASELINE_TRAILING}
* <li>{@code GridBagConstraints.BELOW_BASELINE}
* <li>{@code GridBagConstraints.BELOW_BASELINE_LEADING}
* <li>{@code GridBagConstraints.BELOW_BASELINE_TRAILING}
* </ul>
* </ul>
* </td>
* <td>
* <ul style="list-style-type:none">
* <li>{@code GridBagConstraints.PAGE_START}</li>
* <li>{@code GridBagConstraints.PAGE_END}</li>
* <li>{@code GridBagConstraints.LINE_START}</li>
* <li>{@code GridBagConstraints.LINE_END}</li>
* <li>{@code GridBagConstraints.FIRST_LINE_START}</li>
* <li>{@code GridBagConstraints.FIRST_LINE_END}</li>
* <li>{@code GridBagConstraints.LAST_LINE_START}</li>
* <li>{@code GridBagConstraints.LAST_LINE_END}</li>
* </ul>
* </td>
* <td>
* <ul style="list-style-type:none">
* <li>{@code GridBagConstraints.BASELINE}</li>
* <li>{@code GridBagConstraints.BASELINE_LEADING}</li>
* <li>{@code GridBagConstraints.BASELINE_TRAILING}</li>
* <li>{@code GridBagConstraints.ABOVE_BASELINE}</li>
* <li>{@code GridBagConstraints.ABOVE_BASELINE_LEADING}</li>
* <li>{@code GridBagConstraints.ABOVE_BASELINE_TRAILING}</li>
* <li>{@code GridBagConstraints.BELOW_BASELINE}</li>
* <li>{@code GridBagConstraints.BELOW_BASELINE_LEADING}</li>
* <li>{@code GridBagConstraints.BELOW_BASELINE_TRAILING}</li>
* </ul>
* </td>
* </tr>
* </tbody>
* </table>
* <dt>{@link GridBagConstraints#weightx},
* {@link GridBagConstraints#weighty}
* <dd>Used to determine how to distribute space, which is
@ -201,14 +186,10 @@ import java.util.Arrays;
* <p>
* The following figure shows a baseline layout and includes a
* component that spans rows:
* <table class="borderless" style="margin: 0px auto">
* <caption>Baseline Layout</caption>
* <tr style="text-align:center">
* <td>
* <img src="doc-files/GridBagLayout-baseline.png"
* alt="The following text describes this graphic (Figure 1)." style="float:center">
* </td>
* </table>
* <p style="text-align: center">
* <img src="doc-files/GridBagLayout-baseline.png"
* alt="The following text describes this graphic (Figure 1).">
* </p>
* This layout consists of three components:
* <ul><li>A panel that starts in row 0 and ends in row 1. The panel
* has a baseline-resize behavior of {@code CONSTANT_DESCENT} and has
@ -257,20 +238,21 @@ import java.util.Arrays;
* left-to-right container and Figure 3 shows the layout for a horizontal,
* right-to-left container.
*
* <table class="borderless" style="margin: 0px auto">
* <caption style="width:600;display:none">Figures</caption>
* <tr style="text-align:center">
* <td>
* <img src="doc-files/GridBagLayout-1.gif" alt="The preceding text describes this graphic (Figure 1)." style="float:center; margin: 7px 10px;">
* </td>
* <td>
* <img src="doc-files/GridBagLayout-2.gif" alt="The preceding text describes this graphic (Figure 2)." style="float:center; margin: 7px 10px;">
* </td>
* <tr style="text-align:center">
* <td>Figure 2: Horizontal, Left-to-Right</td>
* <td>Figure 3: Horizontal, Right-to-Left</td>
* </tr>
* </table>
* <div style="margin:0 auto;width:680px;text-align:center;font-weight:bold">
* <div style="float:left">
* <p><img src="doc-files/GridBagLayout-1.gif"
* alt="The preceding text describes this graphic (Figure 2)."
* style="margin: 7px 10px;">
* <p>Figure 2: Horizontal, Left-to-Right
* </div>
* <div style="float:right">
* <p><img src="doc-files/GridBagLayout-2.gif"
* alt="The preceding text describes this graphic (Figure 3)."
* style="margin: 7px 10px;">
* <p>Figure 3: Horizontal, Right-to-Left
* </div>
* <br style="clear:both;">
* </div>
* <p>
* Each of the ten components has the {@code fill} field
* of its associated {@code GridBagConstraints} object

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2017, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -55,26 +55,21 @@ package java.awt;
* If the container's {@code ComponentOrientation} property is horizontal
* and right-to-left, the example produces the output shown in Figure 2.
*
* <table style="float:center;width:600">
* <caption style="display:none">Figures</caption>
* <tr style="text-align:center">
* <td><img SRC="doc-files/GridLayout-1.gif"
* alt="Shows 6 buttons in rows of 2. Row 1 shows buttons 1 then 2.
* Row 2 shows buttons 3 then 4. Row 3 shows buttons 5 then 6.">
* </td>
*
* <td style="text-align:center"><img SRC="doc-files/GridLayout-2.gif"
* alt="Shows 6 buttons in rows of 2. Row 1 shows buttons 2 then 1.
* Row 2 shows buttons 4 then 3. Row 3 shows buttons 6 then 5.">
* </td>
* </tr>
*
* <tr style="text-align:center">
* <td>Figure 1: Horizontal, Left-to-Right</td>
*
* <td>Figure 2: Horizontal, Right-to-Left</td>
* </tr>
* </table>
* <div style="margin:0 auto;width:600px;text-align:center;font-weight:bold">
* <div style="float:left">
* <p><img SRC="doc-files/GridLayout-1.gif"
* alt="Shows 6 buttons in rows of 2. Row 1 shows buttons 1 then 2.
* Row 2 shows buttons 3 then 4. Row 3 shows buttons 5 then 6.">
* <p>Figure 1: Horizontal, Left-to-Right
* </div>
* <div style="float:right">
* <p><img SRC="doc-files/GridLayout-2.gif"
* alt="Shows 6 buttons in rows of 2. Row 1 shows buttons 2 then 1.
* Row 2 shows buttons 4 then 3. Row 3 shows buttons 6 then 5.">
* <p>Figure 2: Horizontal, Right-to-Left
* </div>
* <br style="clear:both;">
* </div>
* <p>
* When both the number of rows and the number of columns have
* been set to non-zero values, either by a constructor or

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2015, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -45,8 +45,8 @@ import javax.accessibility.*;
* <p>
* produces the following labels:
* <p>
* <img src="doc-files/Label-1.gif" alt="Two labels: 'Hi There!' and 'Another label'"
* style="float:center; margin: 7px 10px;">
* <img src="doc-files/Label-1.gif" alt="Two labels: 'Hi There!' and
* 'Another label'" style="margin: 7px 10px;">
*
* @author Sami Shaio
* @since 1.0

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2018, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -61,7 +61,8 @@ import javax.accessibility.*;
* scrolling list:
* <p>
* <img src="doc-files/List-1.gif"
* alt="Shows a list containing: Venus, Earth, JavaSoft, and Mars. Javasoft is selected." style="float:center; margin: 7px 10px;">
* alt="Shows a list containing: Venus, Earth, JavaSoft, and Mars. Javasoft is
* selected." style="margin: 7px 10px;">
* <p>
* If the List allows multiple selections, then clicking on
* an item that is already selected deselects it. In the preceding

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2017, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -50,9 +50,9 @@ import sun.awt.AWTAccessor;
* This is what a menu bar might look like:
* <p>
* <img src="doc-files/MenuBar-1.gif"
* alt="Diagram of MenuBar containing 2 menus: Examples and Options.
* Examples menu is expanded showing items: Basic, Simple, Check, and More Examples."
* style="float:center; margin: 7px 10px;">
* alt="Diagram of MenuBar containing 2 menus: Examples and Options. Examples
* menu is expanded showing items: Basic, Simple, Check, and More Examples."
* style="margin: 7px 10px;">
* <p>
* A menu bar handles keyboard shortcuts for menu items, passing them
* along to its child menus.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2017, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -51,8 +51,8 @@ import sun.awt.AWTAccessor;
* a simple labeled menu item.
* <p>
* This picture of a menu bar shows five menu items:
* <IMG SRC="doc-files/MenuBar-1.gif" alt="The following text describes this graphic."
* style="float:center; margin: 7px 10px;">
* <IMG SRC="doc-files/MenuBar-1.gif" alt="The following text describes this
* graphic." style="margin: 7px 10px;">
* <br style="clear:left;">
* The first two items are simple menu items, labeled
* {@code "Basic"} and {@code "Simple"}.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2017, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -41,8 +41,8 @@ import javax.accessibility.*;
* scroll bars could be used as slider controls to pick
* the red, green, and blue components of a color:
* <p>
* <img src="doc-files/Scrollbar-1.gif" alt="Image shows 3 vertical sliders, side-by-side."
* style="float:center; margin: 7px 10px;">
* <img src="doc-files/Scrollbar-1.gif" alt="Image shows 3 vertical sliders,
* side-by-side." style="margin: 7px 10px;">
* <p>
* Each scroll bar in this example could be created with
* code similar to the following:
@ -59,8 +59,8 @@ import javax.accessibility.*;
* Here is an example of a scroll bar that represents a range:
* <p>
* <img src="doc-files/Scrollbar-2.gif"
* alt="Image shows horizontal slider with starting range of 0 and ending range of 300. The slider thumb is labeled 60."
* style="float:center; margin: 7px 10px;">
* alt="Image shows horizontal slider with starting range of 0 and ending range
* of 300. The slider thumb is labeled 60." style="margin: 7px 10px;">
* <p>
* The value range represented by the bubble in this example
* is the <em>visible amount</em>. The horizontal scroll bar

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2015, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -41,8 +41,8 @@ import javax.accessibility.AccessibleStateSet;
* <p>
* The following image shows the appearance of a text area:
* <p>
* <img src="doc-files/TextArea-1.gif" alt="A TextArea showing the word 'Hello!'"
* style="float:center; margin: 7px 10px;">
* <img src="doc-files/TextArea-1.gif" alt="A TextArea showing the word
* 'Hello!'" style="margin: 7px 10px;">
* <p>
* This text area could be created by the following line of code:
*

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2015, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -41,8 +41,8 @@ import javax.accessibility.*;
* text fields of varying widths. Two of these text fields
* display the predefined text {@code "Hello"}.
* <p>
* <img src="doc-files/TextField-1.gif" alt="The preceding text describes this image."
* style="float:center; margin: 7px 10px;">
* <img src="doc-files/TextField-1.gif" alt="The preceding text describes this
* image." style="margin: 7px 10px;">
* <p>
* Here is the code that produces these four text fields:
*

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1995, 2018, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -96,8 +96,9 @@ import sun.util.logging.PlatformLogger;
* possible, as shown in the following figure.
* <p>
* <img src="doc-files/MultiScreen.gif"
* alt="Diagram shows virtual device containing 4 physical screens. Primary physical screen shows coords (0,0), other screen shows (-80,-100)."
* style="float:center; margin: 7px 10px;">
* alt="Diagram shows virtual device containing 4 physical screens. Primary
* physical screen shows coords (0,0), other screen shows (-80,-100)."
* style="margin: 7px 10px;">
* <p>
* In such an environment, when calling {@code setLocation},
* you must pass a virtual coordinate to this method. Similarly,

View File

@ -5,7 +5,7 @@
<title>AWT Desktop Properties</title>
</head>
<!--
Copyright (c) 2005, 2018, Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2005, 2019, Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
This code is free software; you can redistribute it and/or modify it
@ -57,22 +57,26 @@ unavailable for any reason, the implementation will return
The following table summarizes the desktop properties documented
here, and their value types.
<br><br>
<table>
<tr bgcolor="#ccccff">
<th>Property Name</th>
<th>Value Type</th>
<th>Summary Description</th>
</tr>
<table border=1>
<thead>
<tr>
<td><A href="#awt.font.desktophints">awt.font.desktophints</A></td>
<th scope="col">Property Name</th>
<th scope="col">Value Type</th>
<th scope="col">Summary Description</th>
</tr>
</thead>
<tbody>
<tr>
<th scope="row"><A href="#awt.font.desktophints">awt.font.desktophints</A></th>
<td>{@link java.util.Map java.util.Map}</td>
<td>Font smoothing (text antialiasing) settings.</td>
</tr>
<tr>
<td><A href="#sun.awt.enableExtraMouseButtons">sun.awt.enableExtraMouseButtons</A></td>
<th scope="row"><A href="#sun.awt.enableExtraMouseButtons">sun.awt.enableExtraMouseButtons</A></th>
<td>{@link java.lang.Boolean java.lang.Boolean}</td>
<td>Controls if mouse events from extra buttons are to be generated or not</td>
</tr>
</tbody>
</table>
<h2>Desktop Font Rendering Hints</h2>

View File

@ -9,7 +9,7 @@
</style>
</head>
<!--
Copyright (c) 2005, 2018, Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2005, 2019, Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
This code is free software; you can redistribute it and/or modify it
@ -57,14 +57,14 @@
<h2>Definitions</h2>
<p>
<u>Document</u> - a window without an owner that, together with
Document - a window without an owner that, together with
all its child hierarchy, may be operated on as a single self-contained
document.
Every window belongs to some document &mdash; its root can be found as
the closest ancestor window without an owner.
</p><p>
<a id="ModalBlocked"></a>
<u>Modal blocked window</u> - a window, that:
Modal blocked window - a window, that:
</p><ul>
<li>doesn't receive any user input events
</li><li>doesn't receive input focus
@ -78,15 +78,15 @@
<hr>
</blockquote>
<p>
<u>Modal dialog</u> - a dialog that blocks some windows while it is
Modal dialog - a dialog that blocks some windows while it is
visible. The blocked windows are determined according to the dialog's
scope of blocking.
</p><p>
<u>Modal excluded window</u> - a window that stays unblocked
Modal excluded window - a window that stays unblocked
while the modal dialog is visible. If a window is modal excluded
then all its owned windows and child components are also excluded.
</p><p>
<u>Scope of blocking (SB)</u> - the set of windows (instances of
Scope of blocking (SB) - the set of windows (instances of
<code>java.awt.Window</code> and all derived classes) that are blocked by
the modal dialog while it is visible.
<blockquote><hr>
@ -109,20 +109,20 @@
A dialog is, by default, modeless. A modal dialog is, by default,
application-modal.
<ol>
<li><u>Modeless dialogs</u><br>
<li>Modeless dialogs<br>
A modeless dialog doesn't block any windows while visible.
</li><li><u>Document-modal dialogs</u><br>
</li><li>Document-modal dialogs<br>
A document-modal dialog blocks all windows from the same
document except those from its child hierarchy. The document root
is determined as the closest ancestor window without an
owner.
</li><li><u>Application-modal dialogs</u><br>
</li><li>Application-modal dialogs<br>
An application-modal dialog blocks all windows from the same
application except for those from its child hierarchy.
If there are several applets launched in a browser, they can be
treated either as separate applications or a single application.
This behavior is implementation-dependent.
</li><li><u>Toolkit-modal dialogs</u><br>
</li><li>Toolkit-modal dialogs<br>
A toolkit-modal dialog blocks all windows that run in the same
toolkit except those from its child hierarchy. If there
are several applets launched all of them run with the same toolkit,
@ -163,13 +163,13 @@
<h2>Show/hide blocking</h2>
<p>
<u>Showing the window or modeless dialog: "F"</u><br>
Showing the window or modeless dialog: "F"<br>
All the visible modal dialogs are looked through &mdash; if F is from the SB
of one of them, it becomes blocked by it. If there are several such
dialogs, the first shown is used. If no such dialogs exist, F remains
unblocked.
</p><p>
<u>Showing the modal dialog: "M"</u><br>
Showing the modal dialog: "M"<br>
When modal dialog M is shown, all the visible windows fall into one of
three distinct groups:
<ul>
@ -188,57 +188,57 @@
second one become blocked by M, and all the windows from the third group
remain untouched.
</p><p>
<u>In typical cases</u>, when no child dialogs are shown before their owners,
In typical cases, when no child dialogs are shown before their owners,
this rule can be simplified. (The following, simplified case, may
leave out some details).
</p><p>
<u>Showing the document-modal dialog: "M"</u><br>
Showing the document-modal dialog: "M"<br>
All the visible application- and toolkit-modal dialogs are looked
through &mdash; if M is from the SB of one of them,
it becomes blocked by it. If there are several such dialogs,
the first shown is used. If no such dialogs exist, M remains unblocked.
</p><p>
<u>Showing the application-modal dialog: "M"</u><br>
Showing the application-modal dialog: "M"<br>
All the visible toolkit-modal dialogs are looked through &mdash;
if M is from the SB of one of them, it becomes blocked by it.
If there are several such dialogs, the first shown is used.
If no such dialogs exist, M remains unblocked.
</p><p>
<u>Showing the toolkit-modal dialog: "M"</u><br>
Showing the toolkit-modal dialog: "M"<br>
M remains unblocked.
<table border="1">
<caption>The Standard Blocking Matrix</caption>
<caption>The Standard Blocking Matrix</caption>
<tbody><tr>
<td>current/shown</td>
<td>frame &amp; modeless</td>
<td>document</td>
<td>application</td>
<td>toolkit</td>
<th scope="col">current/shown</th>
<th scope="col">frame &amp; modeless</th>
<th scope="col">document</th>
<th scope="col">application</th>
<th scope="col">toolkit</th>
</tr>
<tr>
<td>-</td>
<th scope="row">-</th>
<td>-</td>
<td>-</td>
<td>-</td>
<td>-</td>
</tr>
<tr>
<td>document</td>
<th scope="row">document</th>
<td>blocked</td>
<td>-</td>
<td>-</td>
<td>-</td>
</tr>
<tr>
<td>application</td>
<th scope="row">application</th>
<td>blocked</td>
<td>blocked</td>
<td>-</td>
<td>-</td>
</tr>
<tr>
<td>toolkit</td>
<th scope="row">toolkit</th>
<td>blocked</td>
<td>blocked</td>
<td>blocked</td>
@ -250,11 +250,11 @@
After the modal dialog is shown, all the windows from its SB are blocked,
except those that block this modal dialog.
</p><p>
<u>Hiding the window or modeless dialog: "F"</u><br>
Hiding the window or modeless dialog: "F"<br>
If F was blocked by any modal dialog M, it becomes unblocked and is
removed from M's blocked windows list.
</p><p>
<u>Hiding the modal dialog: "M"</u><br>
Hiding the modal dialog: "M"<br>
If M was blocked by any other modal dialog, for example, "N",
it becomes unblocked and
is removed from N's blocked windows list. Then, all the windows and dialogs
@ -273,11 +273,11 @@
</li></ul>
By default, a window's modal exclusion property is turned off.
<ol>
<li><u>Application-modal exclusion</u><br>
<li>Application-modal exclusion<br>
If a window is application-modal excluded, it is not blocked by any
application-modal dialogs. Also, it is not blocked by document-modal
dialogs from outside of its child hierarchy.
</li><li><u>Toolkit-modal exclusion</u><br>
</li><li>Toolkit-modal exclusion<br>
If a window is toolkit-modal excluded, it is not blocked
by any application- or toolkit-modal dialogs. Also, it is not
blocked by document-modal dialogs from outside of their child hierarchy.
@ -285,19 +285,19 @@
<blockquote>
<hr>
<b>Implementation note</b>: Changing the modal exclusion type for a visible window
may have no effect until it is hidden and then shown again.
may have no effect until it is hidden and then shown again.<hr>
</blockquote>
<a id="Related"></a>
<h2>Related AWT features</h2>
<p>
<u>Always-On-Top</u><br>
Always-On-Top<br>
When a modal dialog that is not always-on-top blocks an always-on-top window,
their relative Z-order is unspecified and platform-dependent.
</p>
<p>
<u>The <code>toFront()</code> and <code>toBack()</code> methods</u><br>
The <code>toFront()</code> and <code>toBack()</code> methods<br>
A modal dialog should always be above all its blocked windows. Thus, if a blocked
window is brought to the front, its blocking dialog, if any, is also brought to the
front and remains above the blocked window. Likewise, if a modal dialog is sent to
@ -305,7 +305,7 @@
blocking dialog.
</p>
<p>
<u>Minimizing, maximizing and closing blocked windows</u><br>
Minimizing, maximizing and closing blocked windows<br>
When a modal dialog blocks a window, the user may not be able to maximize or
minimize the blocked window&mdash; however, the actual behavior is unspecified
and platform-dependent. In any case, the user can't close the blocked window
@ -314,13 +314,13 @@
window.
</p>
<p>
<u>Blocked windows activations</u><br>
Blocked windows activations<br>
When the user selects a blocked window, it may be brought to the front, along
with the blocking modal dialog which would then become the active window&mdash;
however, the actual behavior is unspecified and platform-dependent.
</p>
<p>
<u>Hiding a modal dialog</u><br>
Hiding a modal dialog<br>
When the modal dialog that currently has focus is hidden, it is unspecified
and platform-dependent, which other window will become the active window.
Any of the following may become the active window:
@ -378,87 +378,67 @@
<a id="Examples"></a>
</p><h2>Examples</h2>
<table border="0">
<tbody><tr>
<td style="text-align:left" >
<ol>
<li>Frame "F" is shown<br>
<li>Document-modal dialog "D<sub>i</sub>" is shown<br>
<li>F becomes blocked by D<sub>i</sub> &mdash; it's in the same document<br>
<li>Document-modal dialog "D<sub>ii</sub>" is shown<br>
<li>D<sub>i</sub> becomes blocked by D<sub>ii</sub> &mdash; it's in the
same document<br>
</ol>
<br>
</td>
<td>
<img src="modal-example1.gif" alt="Example 1">
<br>
</td>
</tr>
<tr>
<td style="text-align:left">
<ol>
<li>Frame "F" is shown<br>
<li>Document-modal dialog "D<sub>i</sub>" is shown<br>
<li>F becomes blocked by D<sub>i</sub> &mdash; it's in the same document<br>
<li>Document-modal dialog "D<sub>ii</sub>" is shown<br>
<li>D<sub>i</sub> becomes blocked by D<sub>ii</sub> &mdash;
it's in the same document<br>
<li>D<sub>i</sub> is hidden<br>
<li>F becomes blocked by D<sub>ii</sub> &mdash; it's in the same document<br>
</ol>
<br>
</td>
<td>
<img src="modal-example2.gif" alt="Example 2">
<br>
</td>
</tr>
<tr>
<td style="text-align:left">
<ol>
<li>Frame "F" is shown<br>
<li>Toolkit-modal dialog "D<sub>i</sub>" is created, but not shown<br>
<li>Document-modal dialog "D<sub>ii</sub>" is shown<br>
<li>F becomes blocked by D<sub>ii</sub> &mdash; it's in the same document<br>
<li>Application-modal dialog "D<sub>iii</sub>" is shown<br>
<li>D<sub>ii</sub> becomes blocked by D<sub>iii</sub> &mdash;
it's in the same application<br>
<li>D<sub>i</sub> is shown<br>
<li>D<sub>i</sub> becomes blocked by D<sub>ii</sub> &mdash; it's its owner<br>
<li>D<sub>iii</sub> remains unblocked &mdash; it blocks D<sub>ii</sub> and
D<sub>ii</sub> blocks D<sub>i</sub><br>
</ol>
<br>
</td>
<td>
<img src="modal-example3.gif" alt="Example 3">
<br>
</td>
</tr>
<tr>
<td style="text-align:left">
<ol>
<li>Frame "F" is shown<br>
<li>Toolkit-modal dialog "D<sub>i</sub>" is created, but not shown<br>
<li>Document-modal dialog "D<sub>ii</sub>" is shown<br>
<li>F becomes blocked by D<sub>ii</sub> &mdash; it's in the same document<br>
<li>Application-modal dialog "D<sub>iii</sub>" is shown<br>
<li>D<sub>ii</sub> becomes blocked by D<sub>iii</sub> &mdash; it's in the
same application<br>
<li>D<sub>i</sub> is shown<br>
<li>D<sub>iii</sub> becomes blocked by D<sub>i</sub> &mdash; D<sub>i</sub>
is not blocked<br>
<li>D<sub>i</sub> remains unblocked<br>
</ol>
<br>
</td>
<td>
<img src="modal-example4.gif" alt="Example 4">
<br>
</td>
</tr>
</tbody></table>
<h3>Example 1</h3>
<ol style="float: left">
<li>Frame F is shown<br>
<li>Document-modal dialog D<sub>i</sub> is shown<br>
<li>F becomes blocked by D<sub>i</sub> &mdash; it's in the same document<br>
<li>Document-modal dialog D<sub>ii</sub> is shown<br>
<li>D<sub>i</sub> becomes blocked by D<sub>ii</sub> &mdash; it's in the
same document<br>
</ol>
<p style="float: left; margin-left: 1em">
<img src="modal-example1.gif" alt="Example 1">
</p>
<h3 style="clear: left">Example 2</h3>
<ol style="float: left">
<li>Frame F is shown<br>
<li>Document-modal dialog D<sub>i</sub> is shown<br>
<li>F becomes blocked by D<sub>i</sub> &mdash; it's in the same document<br>
<li>Document-modal dialog D<sub>ii</sub> is shown<br>
<li>D<sub>i</sub> becomes blocked by D<sub>ii</sub> &mdash; it's in the
same document<br>
</ol>
<p style="float: left; margin-left: 1em">
<img src="modal-example2.gif" alt="Example 2">
</p>
<h3 style="clear: left">Example 3</h3>
<ol style="float: left">
<li>Frame F is shown<br>
<li>Toolkit-modal dialog D<sub>i</sub> is created, but not shown<br>
<li>Document-modal dialog D<sub>ii</sub> is shown<br>
<li>F becomes blocked by D<sub>ii</sub> &mdash; it's in the same document<br>
<li>Application-modal dialog D<sub>iii</sub> is shown<br>
<li>D<sub>ii</sub> becomes blocked by D<sub>iii</sub> &mdash;
it's in the same application<br>
<li>D<sub>i</sub> is shown<br>
<li>D<sub>i</sub> becomes blocked by D<sub>ii</sub> &mdash; it's its owner<br>
<li>D<sub>iii</sub> remains unblocked &mdash; it blocks D<sub>ii</sub> and
D<sub>ii</sub> blocks D<sub>i</sub><br>
</ol>
<p style="float: left; margin-left: 1em">
<img src="modal-example3.gif" alt="Example 3">
</p>
<h3 style="clear: left">Example 4</h3>
<ol style="float: left">
<li>Frame F is shown<br>
<li>Toolkit-modal dialog D<sub>i</sub> is created, but not shown<br>
<li>Document-modal dialog D<sub>ii</sub> is shown<br>
<li>F becomes blocked by D<sub>ii</sub> &mdash; it's in the same document<br>
<li>Application-modal dialog D<sub>iii</sub> is shown<br>
<li>D<sub>ii</sub> becomes blocked by D<sub>iii</sub> &mdash; it's in the
same application<br>
<li>D<sub>i</sub> is shown<br>
<li>D<sub>iii</sub> becomes blocked by D<sub>i</sub> &mdash; D<sub>i</sub>
is not blocked<br>
<li>D<sub>i</sub> remains unblocked<br>
</ol>
<p style="float: left; margin-left: 1em">
<img src="modal-example4.gif" alt="Example 4">
</p>
<br style="clear:both;">
</main>
</body></html>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -116,17 +116,19 @@ import jdk.internal.access.SharedSecrets;
* </thead>
* <tbody>
* <tr>
* <th scope="row" rowspan="2">Arabic
* <th scope="rowgroup" rowspan="2">Arabic
* <td>{@link NumericShaper#ARABIC NumericShaper.ARABIC}
* <br>
* {@link NumericShaper#EASTERN_ARABIC NumericShaper.EASTERN_ARABIC}
* <td>{@link NumericShaper#EASTERN_ARABIC NumericShaper.EASTERN_ARABIC}
* </tr>
* <tr>
* <th scope="row">{@link NumericShaper.Range#ARABIC}
* <td>{@link NumericShaper.Range#ARABIC}
* <br>
* {@link NumericShaper.Range#EASTERN_ARABIC}
* <td>{@link NumericShaper.Range#EASTERN_ARABIC}
* </tbody>
* <tbody>
* <tr>
* <th scope="row">Tai Tham
* <td>{@link NumericShaper.Range#TAI_THAM_HORA}

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2006, 2018, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2006, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -892,83 +892,83 @@ public abstract class Path2D implements Shape, Cloneable {
* <caption>Constants</caption>
* <thead>
* <tr>
* <th>Constant Name</th>
* <th>Byte Value</th>
* <th>Followed by</th>
* <th>Description</th>
* <th scope="col">Constant Name</th>
* <th scope="col">Byte Value</th>
* <th scope="col">Followed by</th>
* <th scope="col">Description</th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td>{@code SERIAL_STORAGE_FLT_ARRAY}</td>
* <th scope="row">{@code SERIAL_STORAGE_FLT_ARRAY}</th>
* <td>0x30</td>
* <td></td>
* <td>A hint that the original {@code Path2D} object stored
* the coordinates in a Java array of floats.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_STORAGE_DBL_ARRAY}</td>
* <th scope="row">{@code SERIAL_STORAGE_DBL_ARRAY}</th>
* <td>0x31</td>
* <td></td>
* <td>A hint that the original {@code Path2D} object stored
* the coordinates in a Java array of doubles.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_FLT_MOVETO}</td>
* <th scope="row">{@code SERIAL_SEG_FLT_MOVETO}</th>
* <td>0x40</td>
* <td>2 floats</td>
* <td>A {@link #moveTo moveTo} path segment follows.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_FLT_LINETO}</td>
* <th scope="row">{@code SERIAL_SEG_FLT_LINETO}</th>
* <td>0x41</td>
* <td>2 floats</td>
* <td>A {@link #lineTo lineTo} path segment follows.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_FLT_QUADTO}</td>
* <th scope="row">{@code SERIAL_SEG_FLT_QUADTO}</th>
* <td>0x42</td>
* <td>4 floats</td>
* <td>A {@link #quadTo quadTo} path segment follows.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_FLT_CUBICTO}</td>
* <th scope="row">{@code SERIAL_SEG_FLT_CUBICTO}</th>
* <td>0x43</td>
* <td>6 floats</td>
* <td>A {@link #curveTo curveTo} path segment follows.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_DBL_MOVETO}</td>
* <th scope="row">{@code SERIAL_SEG_DBL_MOVETO}</th>
* <td>0x50</td>
* <td>2 doubles</td>
* <td>A {@link #moveTo moveTo} path segment follows.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_DBL_LINETO}</td>
* <th scope="row">{@code SERIAL_SEG_DBL_LINETO}</th>
* <td>0x51</td>
* <td>2 doubles</td>
* <td>A {@link #lineTo lineTo} path segment follows.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_DBL_QUADTO}</td>
* <th scope="row">{@code SERIAL_SEG_DBL_QUADTO}</th>
* <td>0x52</td>
* <td>4 doubles</td>
* <td>A {@link #curveTo curveTo} path segment follows.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_DBL_CUBICTO}</td>
* <th scope="row">{@code SERIAL_SEG_DBL_CUBICTO}</th>
* <td>0x53</td>
* <td>6 doubles</td>
* <td>A {@link #curveTo curveTo} path segment follows.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_CLOSE}</td>
* <th scope="row">{@code SERIAL_SEG_CLOSE}</th>
* <td>0x60</td>
* <td></td>
* <td>A {@link #closePath closePath} path segment.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_PATH_END}</td>
* <th scope="row">{@code SERIAL_PATH_END}</th>
* <td>0x61</td>
* <td></td>
* <td>There are no more path segments following.</td>
@ -1666,83 +1666,83 @@ public abstract class Path2D implements Shape, Cloneable {
* <caption>Constants</caption>
* <thead>
* <tr>
* <th>Constant Name</th>
* <th>Byte Value</th>
* <th>Followed by</th>
* <th>Description</th>
* <th scope="col">Constant Name</th>
* <th scope="col">Byte Value</th>
* <th scope="col">Followed by</th>
* <th scope="col">Description</th>
* </tr>
* </thead>
* <tbody>
* <tr>
* <td>{@code SERIAL_STORAGE_FLT_ARRAY}</td>
* <th scope="row">{@code SERIAL_STORAGE_FLT_ARRAY}</th>
* <td>0x30</td>
* <td></td>
* <td>A hint that the original {@code Path2D} object stored
* the coordinates in a Java array of floats.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_STORAGE_DBL_ARRAY}</td>
* <th scope="row">{@code SERIAL_STORAGE_DBL_ARRAY}</th>
* <td>0x31</td>
* <td></td>
* <td>A hint that the original {@code Path2D} object stored
* the coordinates in a Java array of doubles.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_FLT_MOVETO}</td>
* <th scope="row">{@code SERIAL_SEG_FLT_MOVETO}</th>
* <td>0x40</td>
* <td>2 floats</td>
* <td>A {@link #moveTo moveTo} path segment follows.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_FLT_LINETO}</td>
* <th scope="row">{@code SERIAL_SEG_FLT_LINETO}</th>
* <td>0x41</td>
* <td>2 floats</td>
* <td>A {@link #lineTo lineTo} path segment follows.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_FLT_QUADTO}</td>
* <th scope="row">{@code SERIAL_SEG_FLT_QUADTO}</th>
* <td>0x42</td>
* <td>4 floats</td>
* <td>A {@link #quadTo quadTo} path segment follows.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_FLT_CUBICTO}</td>
* <th scope="row">{@code SERIAL_SEG_FLT_CUBICTO}</th>
* <td>0x43</td>
* <td>6 floats</td>
* <td>A {@link #curveTo curveTo} path segment follows.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_DBL_MOVETO}</td>
* <th scope="row">{@code SERIAL_SEG_DBL_MOVETO}</th>
* <td>0x50</td>
* <td>2 doubles</td>
* <td>A {@link #moveTo moveTo} path segment follows.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_DBL_LINETO}</td>
* <th scope="row">{@code SERIAL_SEG_DBL_LINETO}</th>
* <td>0x51</td>
* <td>2 doubles</td>
* <td>A {@link #lineTo lineTo} path segment follows.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_DBL_QUADTO}</td>
* <th scope="row">{@code SERIAL_SEG_DBL_QUADTO}</th>
* <td>0x52</td>
* <td>4 doubles</td>
* <td>A {@link #curveTo curveTo} path segment follows.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_DBL_CUBICTO}</td>
* <th scope="row">{@code SERIAL_SEG_DBL_CUBICTO}</th>
* <td>0x53</td>
* <td>6 doubles</td>
* <td>A {@link #curveTo curveTo} path segment follows.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_SEG_CLOSE}</td>
* <th scope="row">{@code SERIAL_SEG_CLOSE}</th>
* <td>0x60</td>
* <td></td>
* <td>A {@link #closePath closePath} path segment.</td>
* </tr>
* <tr>
* <td>{@code SERIAL_PATH_END}</td>
* <th scope="row">{@code SERIAL_PATH_END}</th>
* <td>0x61</td>
* <td></td>
* <td>There are no more path segments following.</td>

View File

@ -5,7 +5,7 @@
<title>GIF Metadata Format Specification</title>
</head>
<!--
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
This code is free software; you can redistribute it and/or modify it
@ -347,92 +347,120 @@ advanced only on user input.
<a id="mapping"></a>
<table border=1>
<caption><b>Mapping of Standard to GIF Native Stream Metadata</b></caption>
<thead>
<tr>
<th>Standard Metadata Component</th>
<th>GIF Native Stream Metadata Component</th>
<th scope="col">Index</th>
<th scope="col">Standard Metadata Component</th>
<th scope="col">GIF Native Stream Metadata Component</th>
</tr>
</thead>
<tbody>
<tr>
<th scope="row">1</th>
<td>/Chroma/Palette/PaletteEntry@index</td>
<td>/GlobalColorTable/ColorTableEntry@index</td>
</tr>
<tr>
<th scope="row">2</th>
<td>/Chroma/Palette/PaletteEntry@red</td>
<td>/GlobalColorTable/ColorTableEntry@red</td>
</tr>
<tr>
<th scope="row">3</th>
<td>/Chroma/Palette/PaletteEntry@green</td>
<td>/GlobalColorTable/ColorTableEntry@green</td>
</tr>
<tr>
<th scope="row">4</th>
<td>/Chroma/Palette/PaletteEntry@blue</td>
<td>/GlobalColorTable/ColorTableEntry@blue</td>
</tr>
<tr>
<th scope="row">5</th>
<td>/Chroma/BackgroundIndex@value</td>
<td>/GlobalColorTable@backgroundColorIndex</td>
</tr>
<tr>
<th scope="row">6</th>
<td>/Data/BitsPerSample@value</td>
<td>/LogicalScreenDescriptor@colorResolution</td>
</tr>
<tr>
<th scope="row">7</th>
<td>/Dimension/PixelAspectRatio@value</td>
<td>/LogicalScreenDescriptor@pixelAspectRatio</td>
</tr>
<tr>
<th scope="row">8</th>
<td>/Dimension/HorizontalScreenSize@value</td>
<td>/LogicalScreenDescriptor@logicalScreenWidth</td>
</tr>
<tr>
<th scope="row">9</th>
<td>/Dimension/VerticalScreenSize@value</td>
<td>/LogicalScreenDescriptor@logicalScreenHeight</td>
</tr>
<tr>
<th scope="row">10</th>
<td>/Document/FormatVersion@value</td>
<td>/Version@value</td>
</tr>
</tbody>
</table>
<table border=1>
<caption><b>Mapping of Standard to GIF Native Image Metadata</b></caption>
<thead>
<tr>
<th>Standard Metadata Component</th>
<th>GIF Native Image Metadata Component</th>
<th scope="col">Index</th>
<th scope="col">Standard Metadata Component</th>
<th scope="col">GIF Native Image Metadata Component</th>
</tr>
</thead>
<tbody>
<tr>
<th scope="row">1</th>
<td>/Chroma/Palette/PaletteEntry@index</td>
<td>/LocalColorTable/ColorTableEntry@index</td>
</tr>
<tr>
<th scope="row">2</th>
<td>/Chroma/Palette/PaletteEntry@red</td>
<td>/LocalColorTable/ColorTableEntry@red</td>
</tr>
<tr>
<th scope="row">3</th>
<td>/Chroma/Palette/PaletteEntry@green</td>
<td>/LocalColorTable/ColorTableEntry@green</td>
</tr>
<tr>
<th scope="row">4</th>
<td>/Chroma/Palette/PaletteEntry@blue</td>
<td>/LocalColorTable/ColorTableEntry@blue</td>
</tr>
<tr>
<th scope="row">5</th>
<td>/Dimension/HorizontalPixelOffset@value</td>
<td>/ImageDescriptor@imageLeftPosition</td>
</tr>
<tr>
<th scope="row">6</th>
<td>/Dimension/VerticalPixelOffset@value</td>
<td>/ImageDescriptor@imageTopPosition</td>
</tr>
<tr>
<th scope="row">7</th>
<td>/Text/TextEntry@value</td>
<td>/CommentExtensions/CommentExtension@value</td>
</tr>
<tr>
<th scope="row">8</th>
<td>/Transparency/TransparentIndex@value</td>
<td>/GraphicControlExtension@transparentColorIndex
(/GraphicControlExtension@transparentColorFlag is also set to
"TRUE")</td>
</tr>
</tbody>
</table>
</main>
</body>

View File

@ -5,7 +5,7 @@
<title>TIFF Metadata Format Specification and Usage Notes</title>
</head>
<!--
Copyright (c) 2015, 2018, Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2015, 2019, Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
This code is free software; you can redistribute it and/or modify it
@ -235,11 +235,16 @@ elements from <a href="#ImageMetadata">TIFF native image metadata</a> is given
in the following table.
<table border="1">
<thead>
<tr>
<th>Standard Metadata Element</th>
<th>Derivation from TIFF Fields</th>
<th scope="col">Index</th>
<th scope="col">Standard Metadata Element</th>
<th scope="col">Derivation from TIFF Fields</th>
</tr>
</thead>
<tbody>
<tr>
<th scope="row">1</th>
<td>/Chroma/ColorSpaceType@name</td>
<td>PhotometricInterpretation: WhiteIsZero, BlackIsZero, TransparencyMask =
"GRAY"; RGB, PaletteColor =&gt; "RGB"; CMYK =&gt; "CMYK";
@ -247,18 +252,22 @@ YCbCr =&gt; "YCbCr";
CIELab, ICCLab =&gt; "Lab".</td>
</tr>
<tr>
<th scope="row">2</th>
<td>/Chroma/NumChannels@value</td>
<td>SamplesPerPixel</td>
</tr>
<tr>
<th scope="row">3</th>
<td>/Chroma/BlackIsZero@value</td>
<td>"TRUE" &lt;=&gt; PhotometricInterpretation =&gt; WhiteIsZero</td>
</tr>
<tr>
<th scope="row">4</th>
<td>/Chroma/Palette</td>
<td>ColorMap</td>
</tr>
<tr>
<th scope="row">5</th>
<td>/Compression/CompressionTypeName@value</td>
<td>Compression: Uncompressed =&gt; "none"; CCITT 1D =&gt; "CCITT
RLE";
@ -269,14 +278,17 @@ JPEG =&gt; "Old JPEG"; New JPEG =&gt; "JPEG"; Zlib =&gt;&gt; "ZLib"; PackBits =&
Deflate =&gt; "Deflate"; Exif JPEG =&gt; "JPEG".</td>
</tr>
<tr>
<th scope="row">6</th>
<td>/Compression/Lossless@value</td>
<td>Compression: JPEG or New JPEG =&gt; "FALSE"; otherwise "TRUE".</td>
</tr>
<tr>
<th scope="row">7</th>
<td>/Data/PlanarConfiguration@value</td>
<td>Chunky =&gt; "PixelInterleaved"; Planar =&gt; "PlaneInterleaved".</td>
</tr>
<tr>
<th scope="row">8</th>
<td>/Data/SampleFormat@value</td>
<td>PhotometricInterpretation PaletteColor =&gt; "Index";
SampleFormat unsigned integer data =&gt; "UnsignedIntegral";
@ -286,53 +298,65 @@ otherwise element not emitted.
</td>
</tr>
<tr>
<th scope="row">9</th>
<td>/Data/BitsPerSample@value</td>
<td>BitsPerSample as a space-separated list.</td>
</tr>
<tr>
<th scope="row">10</th>
<td>/Data/SampleMSB@value</td>
<td>FillOrder: left-to-right =&gt; space-separated list of BitsPerSample-1;
right-to-left =&gt; space-separated list of 0s.</td>
</tr>
<tr>
<th scope="row">11</th>
<td>/Dimension/PixelAspectRatio@value</td>
<td>(1/XResolution)/(1/YResolution)</td>
</tr>
<tr>
<th scope="row">12</th>
<td>/Dimension/ImageOrientation@value</td>
<td>Orientation</td>
</tr>
<tr>
<th scope="row">13</th>
<td>/Dimension/HorizontalPixelSize@value</td>
<td>1/XResolution in millimeters if ResolutionUnit is not None.</td>
</tr>
<tr>
<th scope="row">14</th>
<td>/Dimension/VerticalPixelSize@value</td>
<td>1/YResolution in millimeters if ResolutionUnit is not None.</td>
</tr>
<tr>
<th scope="row">15</th>
<td>/Dimension/HorizontalPosition@value</td>
<td>XPosition in millimeters if ResolutionUnit is not None.</td>
</tr>
<tr>
<th scope="row">16</th>
<td>/Dimension/VerticalPosition@value</td>
<td>YPosition in millimeters if ResolutionUnit is not None.</td>
</tr>
<tr>
<th scope="row">17</th>
<td>/Document/FormatVersion@value</td>
<td>6.0</td>
</tr>
<tr>
<th scope="row">18</th>
<td>/Document/SubimageInterpretation@value</td>
<td>NewSubFileType: transparency =&gt; "TransparencyMask";
reduced-resolution =&gt; "ReducedResolution";
single page =&gt; "SinglePage".</td>
</tr>
<tr>
<th scope="row">19</th>
<td>/Document/ImageCreationTime@value</td>
<td>DateTime</td>
</tr>
<tr>
<th scope="row">20</th>
<td>/Text/TextEntry</td>
<td>DocumentName, ImageDescription, Make, Model, PageName, Software,
Artist, HostComputer, InkNames, Copyright:
@ -343,10 +367,12 @@ Example: TIFF Software field =&gt; /Text/TextEntry@keyword = "Software",
used to create the image.</td>
</tr>
<tr>
<th scope="row">21</th>
<td>/Transparency/Alpha@value</td>
<td>ExtraSamples: associated alpha =&gt; "premultiplied";
unassociated alpha =&gt; "nonpremultiplied".</td>
</tr>
</tbody>
</table>
<h3><a id="ExifRead">Reading Exif Images</a></h3>
@ -490,40 +516,55 @@ supported compression types is listed in the following table:
<table border=1>
<caption><b>Supported Compression Types</b></caption>
<tr><th>Compression Type</th> <th>Description</th> <th>Reference</th></tr>
<thead>
<tr>
<th scope="col">Index</th>
<th scope="col">Compression Type</th>
<th scope="col">Description</th>
<th scope="col">Reference</th></tr>
<tr>
</thead>
<tbody>
<th scope="row">1</th>
<td>CCITT RLE</td>
<td>Modified Huffman compression</td>
<td>TIFF 6.0 Specification, Section 10</td>
</tr>
<tr>
<th scope="row">2</th>
<td>CCITT T.4</td>
<td>CCITT T.4 bilevel encoding/Group 3 facsimile compression</td>
<td>TIFF 6.0 Specification, Section 11</td>
</tr>
<tr>
<th scope="row">3</th>
<td>CCITT T.6</td>
<td>CCITT T.6 bilevel encoding/Group 4 facsimile compression</td>
<td>TIFF 6.0 Specification, Section 11</td></tr>
<tr>
<th scope="row">4</th>
<td>LZW</td>
<td>LZW compression</td>
<td>TIFF 6.0 Specification, Section 13</td></tr>
<tr>
<th scope="row">5</th>
<td>JPEG</td>
<td>"New" JPEG-in-TIFF compression</td>
<td>TIFF Technical Note #2</td></tr>
<tr>
<th scope="row">6</th>
<td>ZLib</td>
<td>"Deflate/Inflate" compression (see note following this table)</td>
<td>Adobe Photoshop&#174; TIFF Technical Notes</td>
</tr>
<tr>
<th scope="row">7</th>
<td>PackBits</td>
<td>Byte-oriented, run length compression</td>
<td>TIFF 6.0 Specification, Section 9</td>
</tr>
<tr>
<th scope="row">8</th>
<td>Deflate</td>
<td>"Zip-in-TIFF" compression (see note following this table)</td>
<td><a href="https://tools.ietf.org/html/rfc1950">
@ -532,10 +573,12 @@ ZLIB Compressed Data Format Specification</a>,
DEFLATE Compressed Data Format Specification</a></td>
</tr>
<tr>
<th scope="row">9</th>
<td>Exif JPEG</td>
<td>Exif-specific JPEG compression (see note following this table)</td>
<td><a href="http://www.exif.org/Exif2-2.PDF">Exif 2.2 Specification</a>
(PDF), section 4.5.5, "Basic Structure of Thumbnail Data"</td>
</tbody>
</table>
<p>
@ -721,11 +764,16 @@ elements from the standard metadata format
given in the following table.
<table border="1">
<thead>
<tr>
<th>TIFF Field</th>
<th>Derivation from Standard Metadata Elements</th>
<th scope="col">Index</th>
<th scope="col">TIFF Field</th>
<th scope="col">Derivation from Standard Metadata Elements</th>
</tr>
</thead>
<tbody>
<tr>
<th scope="row">1</th>
<td>
PhotometricInterpretation
</td>
@ -736,14 +784,17 @@ PaletteColor; "GRAY" =&gt; BlackIsZero; "RGB" =&gt; RGB; "YCbCr" =&gt; YCbCr;
"CMYK" =&gt; CMYK; "Lab" =&gt; CIELab.</td>
</tr>
<tr>
<th scope="row">2</th>
<td>SamplesPerPixel</td>
<td>/Chroma/NumChannels@value</td>
</tr>
<tr>
<th scope="row">3</th>
<td>ColorMap</td>
<td>/Chroma/Palette</td>
</tr>
<tr>
<th scope="row">4</th>
<td>Compression</td>
<td>/Compression/CompressionTypeName@value: "none" =&gt; Uncompressed;
"CCITT RLE" =&gt; CCITT 1D; "CCITT T.4" =&gt; Group 3 Fax; "CCITT T.6" =&gt; Group 4
@ -751,11 +802,13 @@ Fax; "LZW" =&gt; LZW; "Old JPEG" =&gt; JPEG; "JPEG" =&gt; New JPEG; "ZLib" =&gt;
"PackBits" =&gt; PackBits; "Deflate" =&gt; Deflate.</td>
</tr>
<tr>
<th scope="row">5</th>
<td>PlanarConfiguration</td>
<td>/Data/PlanarConfiguration@value: "PixelInterleaved" =&gt; Chunky;
"PlaneInterleaved" =&gt; Planar.</td>
</tr>
<tr>
<th scope="row">6</th>
<td>SampleFormat</td>
<td>/Data/SampleFormat@value: "SignedIntegral" =&gt; two's complement signed
integer data; "UnsignedIntegral" =&gt; unsigned integer data; "Real" =&gt;
@ -763,54 +816,65 @@ IEEE floating point data; "Index" =&gt; unsigned integer data.
</td>
</tr>
<tr>
<th scope="row">7</th>
<td>BitsPerSample</td>
<td>/Data/BitsPerSample@value: space-separated list parsed to char array.</td>
</tr>
<tr>
<th scope="row">8</th>
<td>FillOrder</td>
<td>/Data/SampleMSB@value: if all values in space-separated list are 0s =&gt;
right-to-left; otherwise =&gt; left-to-right.
</td>
</tr>
<tr>
<th scope="row">9</th>
<td>XResolution</td>
<td>(10 / /Dimension/HorizontalPixelSize@value) or
(10 / (/Dimension/VerticalPixelSize@value *
/Dimension/PixelAspectRatio@value))</td>
</tr>
<tr>
<th scope="row">10</th>
<td>YResolution</td>
<td>(10 / /Dimension/VerticalPixelSize@value) or
(10 / (/Dimension/HorizontalPixelSize@value /
/Dimension/PixelAspectRatio@value))</td>
</tr>
<tr>
<th scope="row">11</th>
<td>ResolutionUnit</td>
<td>Centimeter if XResolution or YResolution set; otherwise None.</td>
</tr>
<tr>
<th scope="row">12</th>
<td>Orientation</td>
<td>/Dimension/ImageOrientation@value</td>
</tr>
<tr>
<th scope="row">13</th>
<td>XPosition</td>
<td>/Dimension/HorizontalPosition@value / 10</td>
</tr>
<tr>
<th scope="row">14</th>
<td>YPosition</td>
<td>/Dimension/VerticalPosition@value / 10</td>
</tr>
<tr>
<th scope="row">15</th>
<td>NewSubFileType</td>
<td>/Document/SubimageInterpretation@value: "TransparencyMask" =&gt;
transparency mask; "ReducedResolution" =&gt; reduced-resolution;
"SinglePage" =&gt; single page.</td>
</tr>
<tr>
<th scope="row">16</th>
<td>DateTime</td>
<td>/Document/ImageCreationTime@value</td>
</tr>
<tr>
<th scope="row">17</th>
<td>DocumentName, ImageDescription, Make, Model, PageName, Software,
Artist, HostComputer, InkNames, Copyright</td>
<td>/Text/TextEntry: if /Text/TextEntry@keyword is the name of any of the
@ -818,14 +882,12 @@ TIFF Fields, e.g., "Software", then the field is added with content
/Text/TextEntry@value and count 1.</td>
</tr>
<tr>
<th scope="row">18</th>
<td>ExtraSamples</td>
<td>/Transparency/Alpha@value: "premultiplied" =&gt; associated alpha, count 1;
"nonpremultiplied" =&gt; unassociated alpha, count 1.</td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<h3><a id="ExifWrite">Writing Exif Images</a></h3>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -40,50 +40,31 @@ import javax.print.attribute.PrintRequestAttribute;
* determines what constitutes a "copy" for purposes of finishing.
* <p>
* Standard Finishings values are:
* <table class="borderless" style="width:100%;margin: 0px auto">
* <caption>Standard Finishings values</caption>
* <tr>
* <td style="width:10%">&nbsp;
* <td style="width:27%">{@link #NONE NONE}
* <td style="width:27%">{@link #STAPLE STAPLE}
* <td style="width:36%">{@link #EDGE_STITCH EDGE_STITCH}
* <tr>
* <td>&nbsp;
* <td>{@link #BIND BIND}
* <td>{@link #SADDLE_STITCH SADDLE_STITCH}
* <td>{@link #COVER COVER}
* <td>&nbsp;
* </table>
* <ul>
* <li>{@link #NONE NONE}
* <li>{@link #STAPLE STAPLE}
* <li>{@link #EDGE_STITCH EDGE_STITCH}
* <li>{@link #BIND BIND}
* <li>{@link #SADDLE_STITCH SADDLE_STITCH}
* <li>{@link #COVER COVER}
* </ul>
* <p>
* The following {@code Finishings} values are more specific; they indicate a
* corner or an edge as if the document were a portrait document:
* <table class="borderless" style="width:100%;margin: 0px auto">
* <caption>Specific Finishings values</caption>
* <tr>
* <td style="width:10%">&nbsp;
* <td style="width:27%">{@link #STAPLE_TOP_LEFT STAPLE_TOP_LEFT}
* <td style="width:27%">{@link #EDGE_STITCH_LEFT EDGE_STITCH_LEFT}
* <td style="width:27%">{@link #STAPLE_DUAL_LEFT STAPLE_DUAL_LEFT}
* <td style="width:9%">&nbsp;
* <tr>
* <td style="width:10%">&nbsp;
* <td style="width:27%">{@link #STAPLE_BOTTOM_LEFT STAPLE_BOTTOM_LEFT}
* <td style="width:27%">{@link #EDGE_STITCH_TOP EDGE_STITCH_TOP}
* <td style="width:27%">{@link #STAPLE_DUAL_TOP STAPLE_DUAL_TOP}
* <td style="width:9%">&nbsp;
* <tr>
* <td style="width:10%">&nbsp;
* <td style="width:27%">{@link #STAPLE_TOP_RIGHT STAPLE_TOP_RIGHT}
* <td style="width:27%">{@link #EDGE_STITCH_RIGHT EDGE_STITCH_RIGHT}
* <td style="width:27%">{@link #STAPLE_DUAL_RIGHT STAPLE_DUAL_RIGHT}
* <td style="width:9%">&nbsp;
* <tr>
* <td style="width:10%">&nbsp;
* <td style="width:27%">{@link #STAPLE_BOTTOM_RIGHT STAPLE_BOTTOM_RIGHT}
* <td style="width:27%">{@link #EDGE_STITCH_BOTTOM EDGE_STITCH_BOTTOM}
* <td style="width:27%">{@link #STAPLE_DUAL_BOTTOM STAPLE_DUAL_BOTTOM}
* <td style="width:9%">&nbsp;
* </table>
* <ul>
* <li>{@link #STAPLE_TOP_LEFT STAPLE_TOP_LEFT}
* <li>{@link #EDGE_STITCH_LEFT EDGE_STITCH_LEFT}
* <li>{@link #STAPLE_DUAL_LEFT STAPLE_DUAL_LEFT}
* <li>{@link #STAPLE_BOTTOM_LEFT STAPLE_BOTTOM_LEFT}
* <li>{@link #EDGE_STITCH_TOP EDGE_STITCH_TOP}
* <li>{@link #STAPLE_DUAL_TOP STAPLE_DUAL_TOP}
* <li>{@link #STAPLE_TOP_RIGHT STAPLE_TOP_RIGHT}
* <li>{@link #EDGE_STITCH_RIGHT EDGE_STITCH_RIGHT}
* <li>{@link #STAPLE_DUAL_RIGHT STAPLE_DUAL_RIGHT}
* <li>{@link #STAPLE_BOTTOM_RIGHT STAPLE_BOTTOM_RIGHT}
* <li>{@link #EDGE_STITCH_BOTTOM EDGE_STITCH_BOTTOM}
* <li>{@link #STAPLE_DUAL_BOTTOM STAPLE_DUAL_BOTTOM}
* </ul>
* <p>
* The STAPLE_<i>XXX</i> values are specified with respect to the document as if
* the document were a portrait document. If the document is actually a

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -36,16 +36,12 @@ import java.io.PrintStream;
* vertically or horizontally. The components will not wrap so, for
* example, a vertical arrangement of components will stay vertically
* arranged when the frame is resized.
* <table class="borderless" style="float:right">
* <caption>Example:</caption>
* <TR>
* <TD style="text-align:center">
* <P STYLE="TEXT-ALIGN:CENTER"><IMG SRC="doc-files/BoxLayout-1.gif"
* alt="The following text describes this graphic."
* WIDTH="191" HEIGHT="201" STYLE="FLOAT:BOTTOM; BORDER:0">
* </TD>
* </TR>
* </TABLE>
* <div style="float:right;text-align:center">
* <p><b>Example:</b>
* <p><img src="doc-files/BoxLayout-1.gif"
* alt="The following text describes this graphic."
* width="191" height="201">
* </div>
* <p>
* Nesting multiple panels with different combinations of horizontal and
* vertical gives an effect similar to GridBagLayout, without the

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -47,16 +47,12 @@ import javax.accessibility.*;
* <a href="https://docs.oracle.com/javase/tutorial/uiswing/components/layeredpane.html">How to Use a Layered Pane</a>,
* a section in <em>The Java Tutorial</em>.
*
* <table class="borderless" style="float:right">
* <caption>Example</caption>
* <TR>
* <TD style="text-align:center">
* <P STYLE="TEXT-ALIGN:CENTER"><IMG SRC="doc-files/JLayeredPane-1.gif"
* alt="The following text describes this image."
* WIDTH="269" HEIGHT="264" STYLE="FLOAT:BOTTOM; BORDER=0">
* </TD>
* </TR>
* </TABLE>
* <div style="float:right;text-align:center">
* <p><b>Example:</b>
* <p><img src="doc-files/JLayeredPane-1.gif"
* alt="The following text describes this image."
* width="269" height="264">
* </div>
* For convenience, <code>JLayeredPane</code> divides the depth-range
* into several different layers. Putting a component into one of those
* layers makes it easy to ensure that components overlap properly,

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -71,15 +71,11 @@ import sun.security.action.GetBooleanAction;
* a given component.
* </blockquote>
*
* <table class="borderless" style="float:right">
* <caption>Example</caption>
* <tr>
* <td style="text-align:center">
* <img src="doc-files/JRootPane-2.gif"
* alt="The following text describes this graphic." HEIGHT=386 WIDTH=349>
* </td>
* </tr>
* </table>
* <div style="float:right;text-align:center;font-weight:bold">
* <p>Example:
* <p><img src="doc-files/JRootPane-2.gif"
* alt="the following text describes this graphic." height=386 width=349>
* </div>
* The diagram at right shows the structure of a <code>JRootPane</code>.
* A <code>JRootpane</code> is made up of a <code>glassPane</code>,
* an optional <code>menuBar</code>, and a <code>contentPane</code>.

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -55,16 +55,12 @@ import java.beans.Transient;
* a section in <em>The Java Tutorial</em>. Note that
* <code>JScrollPane</code> does not support heavyweight components.
*
* <table class="borderless" style="float:right">
* <caption>Example</caption>
* <TR>
* <TD style="text-align:center">
* <P STYLE="TEXT-ALIGN:CENTER"><IMG SRC="doc-files/JScrollPane-1.gif"
* alt="The following text describes this image."
* WIDTH="256" HEIGHT="248" STYLE="FLOAT:BOTTOM; BORDER:0px">
* </TD>
* </TR>
* </TABLE>
* <div style="float:right;text-align:center">
* <p><b>Example:</b>
* <p><img src="doc-files/JScrollPane-1.gif"
* alt="The following text describes this image."
* width="256" height="248">
* </div>
* The <code>JViewport</code> provides a window,
* or &quot;viewport&quot; onto a data
* source -- for example, a text file. That data source is the

View File

@ -4,7 +4,7 @@
<meta charset="utf-8"/>
<title>Synth File Format</title>
<!--
Copyright (c) 1998, 2018, Oracle and/or its affiliates. All rights reserved.
Copyright (c) 1998, 2019, Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
This code is free software; you can redistribute it and/or modify it
@ -777,12 +777,32 @@ div.example {
SynthPainter method:
</p>
<table border=1>
<caption> Painters for SynthPainter methods </caption>
<tr><th>State<th>Method<th>Painter
<tr><td>SELECTED<td>paintButtonBackground<td>stateButtonBackgroundPainter
<tr><td>SELECTED<td>Anything but paintButtonBackground<td>stateFallbackPainter
<tr><td>Anything but SELECTED<td>paintButtonBackground<td>styleButtonBackgroundPainter
<tr><td>Anything but SELECTED<td>Anything but paintButtonBackground<td>fallbackPainter
<caption>Painters for SynthPainter methods</caption>
<thead>
<tr>
<th scope="col">Index
<th scope="col">State
<th scope="col">Method
<th scope="col">Painter
</thead>
<tbody>
<tr>
<th scope="row">1
<td>SELECTED
<td>paintButtonBackground<td>stateButtonBackgroundPainter
<tr>
<th scope="row">2
<td>SELECTED
<td>Anything but paintButtonBackground<td>stateFallbackPainter
<tr>
<th scope="row">3
<td>Anything but SELECTED
<td>paintButtonBackground<td>styleButtonBackgroundPainter
<tr>
<th scope="row">4
<td>Anything but SELECTED
<td>Anything but paintButtonBackground<td>fallbackPainter
</tbody>
</table>
<p>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -3577,7 +3577,7 @@ public class HTMLDocument extends DefaultStyledDocument {
* <td>{@link DefaultComboBoxModel} or an {@link DefaultListModel},
* with an item type of Option
* <tr>
* <td>textarea
* <th scope="row">textarea
* <td>{@link PlainDocument}
* </tbody>
* </table>