On Mon, 7 Feb 2022 16:17:32 GMT, Nir Lisker <nlis...@openjdk.org> wrote:

>> This is a Javadoc cleanup and correction fix for the TabPane as described in 
>> the JBS.
>> 
>> Changes done for all the Properties of the TabPane -
>> - Moved the property description to be over the property field.
>> - Removed the unnecessary docs on property setter/getter and Property method.
>
> modules/javafx.controls/src/main/java/javafx/scene/control/TabPane.java line 
> 174:
> 
>> 172:     /**
>> 173:      * <p>Sets the model used for tab selection.  By changing the model 
>> you can alter
>> 174:      * how the tabs are selected and which tabs are first or last.</p>
> 
> This description is phrased like it's a setter. Probably
> 
> The selection model used for selecting tabs. Changing the model alters
> how the tabs are selected and which tabs are first or last.
> 
> (there's no need to the `<p>` either)

Fixed.

> modules/javafx.controls/src/main/java/javafx/scene/control/TabPane.java line 
> 188:
> 
>> 186:      * the TabPane will immediately update the location of the tabs to 
>> reflect
>> 187:      * this.</p>
>> 188:      * The default position for the tabs is {@code Side.Top}.
> 
> I would rephrase a bit:
> 
> The position of the tabs in the {@code TabPane}. Changes to the value of this 
> property
> immediately update the location of the tabs.
> 
> @defaultValue {@code Side.Top}
> 
> The 2nd sentence seems redundant anyway and I suggest to remove it. Unless 
> otherwise specified, all value changes are applied immediately (only 
> `Animation` properties come to mind that specify that the animation has to be 
> stopped for the changes to take effect).

I like the rephrased version. I prefer keeping the 2nd sentence in this case as 
it indicates a non-trivial visual update.

> modules/javafx.controls/src/main/java/javafx/scene/control/TabPane.java line 
> 244:
> 
>> 242:      * <p>Refer to the {@link TabClosingPolicy} enumeration for further 
>> details.</p>
>> 243:      *
>> 244:      * The default closing policy is TabClosingPolicy.SELECTED_TAB
> 
> * The default value should be in an `@defaultValue` annotation.
> * Missing `{@code }`s
> * The line "Refer to the {@link TabClosingPolicy}" is redundant I think since 
> it's linked in the signature/definition, and if we want to keep it then an 
> `@see` might be preferable.
> * "end-user's" (missing apostrophe)

Fixed points 1, 2 and 4.
Regarding point 3 - 
I have removed the description regarding possible options and have kept only 
the line-
`Refer to the {@link TabClosingPolicy} enumeration for further details.`
Mentioning all the options here seems to be a duplication of Javadoc for 
enumeration TabClosingPolicy.

> modules/javafx.controls/src/main/java/javafx/scene/control/TabPane.java line 
> 270:
> 
>> 268:      * the graphic isn't rotated, resulting in it always appearing 
>> upright. If
>> 269:      * rotateGraphic is set to {@code true}, the graphic will rotate 
>> such that it
>> 270:      * rotates with the tab text.</p>
> 
> * Missing `@code`s
> * I would rephrase the 2nd paragraph to be simpler:
>   ```
>   If the value is {@code false}, the graphic isn't rotated, resulting in it 
> always appearing upright.
>   If it is {@code true}, the graphic is rotate with the tab text.
>   ```
> * `@defaultValue {@code false}`

Fixed.

> modules/javafx.controls/src/main/java/javafx/scene/control/TabPane.java line 
> 295:
> 
>> 293:      *
>> 294:      * This value can also be set via CSS using {@code 
>> -fx-tab-min-width}.
>> 295:      * </p>
> 
> I would write
> 
> The minimum width of a tab in the TabPane. This can be used to limit
> the length of text in tabs to prevent truncation.  Setting the same minimum
> and maximum widths will fix the width of the tab.
> 
> It makes it clear that it applies to each tab individually (and not the total 
> width of the tabs). The same applies for the other min/max height/width 
> properties.
> 
> The sentence "By default the min equals to the max." seems wrong. The 
> `DEFAULT_TAB_MIN_WIDTH` constant is set to 0. It should also be in a 
> `@defaultValue`.
> 
> The CSS mention is good, bit I never saw it mentioned for properties before. 
> Makes me wonder if we should add the CSS property as part of a property's 
> description in general via the automated javadoc tool.

Good suggestion. Fixed.

Regarding CSS mention for properties, I am not sure whether that can be 
automated. If there is a way to achieve it, I can file a separate bug to 
address it.

> modules/javafx.controls/src/main/java/javafx/scene/control/TabPane.java line 
> 337:
> 
>> 335:      *
>> 336:      * This value can also be set via CSS using {@code 
>> -fx-tab-max-width}.
>> 337:      * </p>
> 
> * "By default the min equals to the max." The default is `Double.MAX_VALUE`.
> * Comma before "the text will be truncated".

Fixed.

> modules/javafx.controls/src/main/java/javafx/scene/control/TabPane.java line 
> 378:
> 
>> 376:      *
>> 377:      * This value can also be set via CSS using {@code 
>> -fx-tab-min-height}.
>> 378:      * </p>
> 
> Same comments as for the width properties.

Fixed.

> modules/javafx.controls/src/main/java/javafx/scene/control/TabPane.java line 
> 419:
> 
>> 417:      *
>> 418:      * This value can also be set via CSS using {@code 
>> -fx-tab-max-height}.
>> 419:      * </p>
> 
> Same comments as for the width properties.

Fixed.

> modules/javafx.controls/src/main/java/javafx/scene/control/TabPane.java line 
> 779:
> 
>> 777:      * The drag policy for the tabs. The policy can be changed 
>> dynamically.
>> 778:      *
>> 779:      * @defaultValue TabDragPolicy.FIXED
> 
> I think that the 2nd sentence is redundant again. I would add an explanation 
> like "Specifies if tabs can be reordered or not" to elaborate on what a "drag 
> policy" is.
> 
> Also, `{@code TabDragPolicy.FIXED}`.

Fixed.

-------------

PR: https://git.openjdk.java.net/jfx/pull/728

Reply via email to