8049704: Fix doclint warnings from javax.swing.plaf.basic package, 2 of 7
Reviewed-by: pchelko
--- a/jdk/src/share/classes/javax/swing/plaf/basic/BasicButtonUI.java Fri Jun 27 10:29:08 2014 -0700
+++ b/jdk/src/share/classes/javax/swing/plaf/basic/BasicButtonUI.java Thu Jul 10 12:21:29 2014 +0400
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2014, 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
@@ -49,6 +49,9 @@
// Visual constants
// NOTE: This is not used or set any where. Were we allowed to remove
// fields, this would be removed.
+ /**
+ * The default gap between a text and an icon.
+ */
protected int defaultTextIconGap;
// Amount to offset text, the value of this comes from
@@ -56,6 +59,9 @@
private int shiftOffset = 0;
// Value that is set in shiftOffset once setTextShiftOffset has been
// invoked. The value of this comes from the defaults table.
+ /**
+ * The default offset of a text.
+ */
protected int defaultTextShiftOffset;
private final static String propertyPrefix = "Button" + ".";
@@ -65,6 +71,12 @@
// ********************************
// Create PLAF
// ********************************
+ /**
+ * Returns an instance of {@code BasicButtonUI}.
+ *
+ * @param c a component
+ * @return an instance of {@code BasicButtonUI}
+ */
public static ComponentUI createUI(JComponent c) {
AppContext appContext = AppContext.getAppContext();
BasicButtonUI buttonUI =
@@ -76,6 +88,11 @@
return buttonUI;
}
+ /**
+ * Returns the property prefix.
+ *
+ * @return the property prefix
+ */
protected String getPropertyPrefix() {
return propertyPrefix;
}
@@ -91,6 +108,11 @@
BasicHTML.updateRenderer(c, ((AbstractButton) c).getText());
}
+ /**
+ * Installs default properties.
+ *
+ * @param b an abstract button
+ */
protected void installDefaults(AbstractButton b) {
// load shared instance defaults
String pp = getPropertyPrefix();
@@ -120,6 +142,11 @@
LookAndFeel.installProperty(b, "iconTextGap", Integer.valueOf(4));
}
+ /**
+ * Registers listeners.
+ *
+ * @param b an abstract button
+ */
protected void installListeners(AbstractButton b) {
BasicButtonListener listener = createButtonListener(b);
if(listener != null) {
@@ -131,6 +158,11 @@
}
}
+ /**
+ * Registers keyboard actions.
+ *
+ * @param b an abstract button
+ */
protected void installKeyboardActions(AbstractButton b){
BasicButtonListener listener = getButtonListener(b);
@@ -150,6 +182,11 @@
BasicHTML.updateRenderer(c, "");
}
+ /**
+ * Unregisters keyboard actions.
+ *
+ * @param b an abstract button
+ */
protected void uninstallKeyboardActions(AbstractButton b) {
BasicButtonListener listener = getButtonListener(b);
if(listener != null) {
@@ -157,6 +194,11 @@
}
}
+ /**
+ * Unregisters listeners.
+ *
+ * @param b an abstract button
+ */
protected void uninstallListeners(AbstractButton b) {
BasicButtonListener listener = getButtonListener(b);
if(listener != null) {
@@ -168,6 +210,11 @@
}
}
+ /**
+ * Uninstalls default properties.
+ *
+ * @param b an abstract button
+ */
protected void uninstallDefaults(AbstractButton b) {
LookAndFeel.uninstallBorder(b);
}
@@ -175,10 +222,22 @@
// ********************************
// Create Listeners
// ********************************
+ /**
+ * Returns a new instance of {@code BasicButtonListener}.
+ *
+ * @param b an abstract button
+ * @return a new instance of {@code BasicButtonListener}
+ */
protected BasicButtonListener createButtonListener(AbstractButton b) {
return new BasicButtonListener(b);
}
+ /**
+ * Returns the default gap between a text and an icon.
+ *
+ * @param b an abstract button
+ * @return the default gap between text and an icon
+ */
public int getDefaultTextIconGap(AbstractButton b) {
return defaultTextIconGap;
}
@@ -231,6 +290,13 @@
}
}
+ /**
+ * Paints an icon of the current button.
+ *
+ * @param g an instance of {@code Graphics}
+ * @param c a component
+ * @param iconRect a bounding rectangle to render the icon
+ */
protected void paintIcon(Graphics g, JComponent c, Rectangle iconRect){
AbstractButton b = (AbstractButton) c;
ButtonModel model = b.getModel();
@@ -295,8 +361,15 @@
}
/**
+ * Method which renders the text of the current button.
+ *
* As of Java 2 platform v 1.4 this method should not be used or overriden.
* Use the paintText method which takes the AbstractButton argument.
+ *
+ * @param g an instance of {@code Graphics}
+ * @param c a component
+ * @param textRect a bounding rectangle to render the text
+ * @param text a string to render
*/
protected void paintText(Graphics g, JComponent c, Rectangle textRect, String text) {
AbstractButton b = (AbstractButton) c;
@@ -328,7 +401,7 @@
*
* @param g Graphics context
* @param b Current button to render
- * @param textRect Bounding rectangle to render the text.
+ * @param textRect Bounding rectangle to render the text
* @param text String to render
* @since 1.4
*/
@@ -338,23 +411,48 @@
// Method signature defined here overriden in subclasses.
// Perhaps this class should be abstract?
+ /**
+ * Paints a focused button.
+ *
+ * @param g an instance of {@code Graphics}
+ * @param b an abstract button
+ * @param viewRect a bounding rectangle to render the button
+ * @param textRect a bounding rectangle to render the text
+ * @param iconRect a bounding rectangle to render the icon
+ */
protected void paintFocus(Graphics g, AbstractButton b,
Rectangle viewRect, Rectangle textRect, Rectangle iconRect){
}
-
+ /**
+ * Paints a pressed button.
+ *
+ * @param g an instance of {@code Graphics}
+ * @param b an abstract button
+ */
protected void paintButtonPressed(Graphics g, AbstractButton b){
}
+ /**
+ * Clears the offset of the text.
+ */
protected void clearTextShiftOffset(){
this.shiftOffset = 0;
}
+ /**
+ * Sets the offset of the text.
+ */
protected void setTextShiftOffset(){
this.shiftOffset = defaultTextShiftOffset;
}
+ /**
+ * Returns the offset of the text.
+ *
+ * @return the offset of the text
+ */
protected int getTextShiftOffset() {
return shiftOffset;
}
--- a/jdk/src/share/classes/javax/swing/plaf/basic/BasicComboBoxUI.java Fri Jun 27 10:29:08 2014 -0700
+++ b/jdk/src/share/classes/javax/swing/plaf/basic/BasicComboBoxUI.java Thu Jul 10 12:21:29 2014 +0400
@@ -61,6 +61,10 @@
* @author Mark Davidson
*/
public class BasicComboBoxUI extends ComboBoxUI {
+
+ /**
+ * The instance of {@code JComboBox}.
+ */
protected JComboBox<Object> comboBox;
/**
* This protected field is implementation specific. Do not access directly
@@ -73,20 +77,30 @@
private boolean isTableCellEditor = false;
private static final String IS_TABLE_CELL_EDITOR = "JComboBox.isTableCellEditor";
- // This list is for drawing the current item in the combo box.
+ /**
+ * This list is for drawing the current item in the combo box.
+ */
protected JList<Object> listBox;
- // Used to render the currently selected item in the combo box.
- // It doesn't have anything to do with the popup's rendering.
+ /**
+ * Used to render the currently selected item in the combo box.
+ * It doesn't have anything to do with the popup's rendering.
+ */
protected CellRendererPane currentValuePane = new CellRendererPane();
- // The implementation of ComboPopup that is used to show the popup.
+ /**
+ * The implementation of {@code ComboPopup} that is used to show the popup.
+ */
protected ComboPopup popup;
- // The Component that the ComboBoxEditor uses for editing
+ /**
+ * The Component that the @{code ComboBoxEditor} uses for editing.
+ */
protected Component editor;
- // The arrow button that invokes the popup.
+ /**
+ * The arrow button that invokes the popup.
+ */
protected JButton arrowButton;
// Listeners that are attached to the JComboBox
@@ -121,8 +135,19 @@
protected ItemListener itemListener;
// Listeners that the ComboPopup produces.
+ /**
+ * The {@code MouseListener} listens to events.
+ */
protected MouseListener popupMouseListener;
+
+ /**
+ * The {@code MouseMotionListener} listens to events.
+ */
protected MouseMotionListener popupMouseMotionListener;
+
+ /**
+ * The {@code KeyListener} listens to events.
+ */
protected KeyListener popupKeyListener;
// This is used for knowing when to cache the minimum preferred size.
@@ -160,10 +185,14 @@
*/
JComboBox.KeySelectionManager keySelectionManager;
- // Flag for recalculating the minimum preferred size.
+ /**
+ * The flag for recalculating the minimum preferred size.
+ */
protected boolean isMinimumSizeDirty = true;
- // Cached minimum preferred size.
+ /**
+ * The cached minimum preferred size.
+ */
protected Dimension cachedMinimumSize = new Dimension( 0, 0 );
// Flag for calculating the display size
@@ -238,6 +267,12 @@
// begin UI Initialization
//
+ /**
+ * Constructs a new instance of {@code BasicComboBoxUI}.
+ *
+ * @param c a component
+ * @return a new instance of {@code BasicComboBoxUI}
+ */
public static ComponentUI createUI(JComponent c) {
return new BasicComboBoxUI();
}
@@ -1090,6 +1125,9 @@
* navigation. This is used for optimizing key input by only passing non-
* navigation keys to the type-ahead mechanism. Subclasses should override this
* if they change the navigation keys.
+ *
+ * @param keyCode a key code
+ * @return {@code true} if the supplied {@code keyCode} maps to a navigation key
*/
protected boolean isNavigationKey( int keyCode ) {
return keyCode == KeyEvent.VK_UP || keyCode == KeyEvent.VK_DOWN ||
@@ -1167,6 +1205,8 @@
/**
* Returns the area that is reserved for drawing the currently selected item.
+ *
+ * @return the area that is reserved for drawing the currently selected item
*/
protected Rectangle rectangleForCurrentValue() {
int width = comboBox.getWidth();
@@ -1190,6 +1230,8 @@
/**
* Gets the insets from the JComboBox.
+ *
+ * @return the insets
*/
protected Insets getInsets() {
return comboBox.getInsets();
@@ -1206,6 +1248,10 @@
/**
* Paints the currently selected item.
+ *
+ * @param g an instance of {@code Graphics}
+ * @param bounds a bounding rectangle to render to
+ * @param hasFocus is focused
*/
public void paintCurrentValue(Graphics g,Rectangle bounds,boolean hasFocus) {
ListCellRenderer<Object> renderer = comboBox.getRenderer();
@@ -1263,6 +1309,10 @@
/**
* Paints the background of the currently selected item.
+ *
+ * @param g an instance of {@code Graphics}
+ * @param bounds a bounding rectangle to render to
+ * @param hasFocus is focused
*/
public void paintCurrentValueBackground(Graphics g,Rectangle bounds,boolean hasFocus) {
Color t = g.getColor();
--- a/jdk/src/share/classes/javax/swing/plaf/basic/BasicComboPopup.java Fri Jun 27 10:29:08 2014 -0700
+++ b/jdk/src/share/classes/javax/swing/plaf/basic/BasicComboPopup.java Thu Jul 10 12:21:29 2014 +0400
@@ -75,6 +75,9 @@
private static Border LIST_BORDER = new LineBorder(Color.BLACK, 1);
+ /**
+ * The instance of {@code JComboBox}.
+ */
protected JComboBox<Object> comboBox;
/**
* This protected field is implementation specific. Do not access directly
@@ -186,11 +189,30 @@
* or override.
*/
protected Timer autoscrollTimer;
+
+ /**
+ * {@code true} if the mouse cursor is in the popup.
+ */
protected boolean hasEntered = false;
+
+ /**
+ * If {@code true} the auto-scrolling is enabled.
+ */
protected boolean isAutoScrolling = false;
+
+ /**
+ * The direction of scrolling.
+ */
protected int scrollDirection = SCROLL_UP;
+ /**
+ * The direction of scrolling up.
+ */
protected static final int SCROLL_UP = 0;
+
+ /**
+ * The direction of scrolling down.
+ */
protected static final int SCROLL_DOWN = 1;
@@ -309,6 +331,9 @@
}
}
+ /**
+ * Unregisters keyboard actions.
+ */
protected void uninstallKeyboardActions() {
// XXX - shouldn't call this method
// comboBox.unregisterKeyboardAction( KeyStroke.getKeyStroke( KeyEvent.VK_ENTER, 0 ) );
@@ -319,6 +344,12 @@
//===================================================================
// begin Initialization routines
//
+
+ /**
+ * Constructs a new instance of {@code BasicComboPopup}.
+ *
+ * @param combo an instance of {@code JComboBox}
+ */
public BasicComboPopup( JComboBox<Object> combo ) {
super();
setName("ComboPopup.popup");
@@ -555,6 +586,8 @@
/**
* Creates the scroll pane which houses the scrollable list.
+ *
+ * @return the scroll pane which houses the scrollable list
*/
protected JScrollPane createScroller() {
JScrollPane sp = new JScrollPane( list,
@@ -616,6 +649,9 @@
}
}
+ /**
+ * Registers keyboard actions.
+ */
protected void installKeyboardActions() {
/* XXX - shouldn't call this method. take it out for testing.
@@ -1007,6 +1043,8 @@
/**
* This protected method is implementation specific and should be private.
* do not call or override.
+ *
+ * @param direction the direction of scrolling
*/
protected void startAutoScrolling( int direction ) {
// XXX - should be a private method within InvocationMouseMotionHandler
@@ -1107,6 +1145,8 @@
* send the focus when the popup is brought up. The standard implementation
* delegates the focus to the editor (if the combo box is editable) or to
* the JComboBox if it is not editable.
+ *
+ * @param e a mouse event
*/
protected void delegateFocus( MouseEvent e ) {
if ( comboBox.isEditable() ) {
@@ -1150,6 +1190,12 @@
}
}
+ /**
+ * Converts mouse event.
+ *
+ * @param e a mouse event
+ * @return converted mouse event
+ */
protected MouseEvent convertMouseEvent( MouseEvent e ) {
Point convertedPoint = SwingUtilities.convertPoint( (Component)e.getSource(),
e.getPoint(), list );
@@ -1171,6 +1217,9 @@
/**
* Retrieves the height of the popup based on the current
* ListCellRenderer and the maximum row count.
+ *
+ * @param maxRowCount the row count
+ * @return the height of the popup
*/
protected int getPopupHeightForRowCount(int maxRowCount) {
// Set the cached value of the minimum row count
@@ -1272,6 +1321,9 @@
/**
* A utility method used by the event listeners. Given a mouse event, it changes
* the list selection to the list item below the mouse.
+ *
+ * @param anEvent a mouse event
+ * @param shouldScroll if {@code true} list should be scrolled.
*/
protected void updateListBoxSelectionForEvent(MouseEvent anEvent,boolean shouldScroll) {
// XXX - only seems to be called from this class. shouldScroll flag is
--- a/jdk/src/share/classes/javax/swing/plaf/basic/BasicDesktopIconUI.java Fri Jun 27 10:29:08 2014 -0700
+++ b/jdk/src/share/classes/javax/swing/plaf/basic/BasicDesktopIconUI.java Thu Jul 10 12:21:29 2014 +0400
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2014, 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
@@ -42,7 +42,14 @@
*/
public class BasicDesktopIconUI extends DesktopIconUI {
+ /**
+ * The instance of {@code JInternalFrame.JDesktopIcon}.
+ */
protected JInternalFrame.JDesktopIcon desktopIcon;
+
+ /**
+ * The instance of {@code JInternalFrame}.
+ */
protected JInternalFrame frame;
/**
@@ -53,12 +60,19 @@
protected JComponent iconPane;
MouseInputListener mouseInputListener;
-
-
+ /**
+ * Constructs a new instance of {@code BasicDesktopIconUI}.
+ *
+ * @param c a component
+ * @return a new instance of {@code BasicDesktopIconUI}
+ */
public static ComponentUI createUI(JComponent c) {
return new BasicDesktopIconUI();
}
+ /**
+ * Constructs a new instance of {@code BasicDesktopIconUI}.
+ */
public BasicDesktopIconUI() {
}
@@ -108,39 +122,62 @@
desktopIcon = null;
}
+ /**
+ * Registers components.
+ */
protected void installComponents() {
iconPane = new BasicInternalFrameTitlePane(frame);
desktopIcon.setLayout(new BorderLayout());
desktopIcon.add(iconPane, BorderLayout.CENTER);
}
+ /**
+ * Unregisters components.
+ */
protected void uninstallComponents() {
desktopIcon.remove(iconPane);
desktopIcon.setLayout(null);
iconPane = null;
}
+ /**
+ * Registers listeners.
+ */
protected void installListeners() {
mouseInputListener = createMouseInputListener();
desktopIcon.addMouseMotionListener(mouseInputListener);
desktopIcon.addMouseListener(mouseInputListener);
}
+ /**
+ * Unregisters listeners.
+ */
protected void uninstallListeners() {
desktopIcon.removeMouseMotionListener(mouseInputListener);
desktopIcon.removeMouseListener(mouseInputListener);
mouseInputListener = null;
}
+ /**
+ * Installs default properties.
+ */
protected void installDefaults() {
LookAndFeel.installBorder(desktopIcon, "DesktopIcon.border");
LookAndFeel.installProperty(desktopIcon, "opaque", Boolean.TRUE);
}
+ /**
+ * Uninstalls default properties.
+ */
protected void uninstallDefaults() {
LookAndFeel.uninstallBorder(desktopIcon);
}
+ /**
+ * Returns a new instance of {@code MouseInputListener}.
+ *
+ * @return a new instance of {@code MouseInputListener}
+ */
protected MouseInputListener createMouseInputListener() {
return new MouseInputHandler();
}
@@ -170,6 +207,12 @@
return iconPane.getMaximumSize();
}
+ /**
+ * Returns the insets.
+ *
+ * @param c a component
+ * @return the insets
+ */
public Insets getInsets(JComponent c) {
JInternalFrame iframe = desktopIcon.getInternalFrame();
Border border = iframe.getBorder();
@@ -179,6 +222,9 @@
return new Insets(0,0,0,0);
}
+ /**
+ * De-iconifies the internal frame.
+ */
public void deiconize() {
try { frame.setIcon(false); } catch (PropertyVetoException e2) { }
}
@@ -284,6 +330,15 @@
return;
}
+ /**
+ * Moves and repaints a component {@code f}.
+ *
+ * @param f a component
+ * @param newX a new X coordinate
+ * @param newY a new Y coordinate
+ * @param newWidth a new width
+ * @param newHeight a new height
+ */
public void moveAndRepaint(JComponent f, int newX, int newY,
int newWidth, int newHeight) {
Rectangle r = f.getBounds();
--- a/jdk/src/share/classes/javax/swing/plaf/basic/BasicLabelUI.java Fri Jun 27 10:29:08 2014 -0700
+++ b/jdk/src/share/classes/javax/swing/plaf/basic/BasicLabelUI.java Thu Jul 10 12:21:29 2014 +0400
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2014, 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
@@ -80,6 +80,14 @@
* This method is here so that a subclass could do Label specific
* layout and to shorten the method name a little.
*
+ * @param label an instance of {@code JLabel}
+ * @param fontMetrics a font metrics
+ * @param text a text
+ * @param icon an icon
+ * @param viewR a bounding rectangle to lay out label
+ * @param iconR a bounding rectangle to lay out icon
+ * @param textR a bounding rectangle to lay out text
+ * @return a possibly clipped version of the compound labels string
* @see SwingUtilities#layoutCompoundLabel
*/
protected String layoutCL(
@@ -109,6 +117,11 @@
/**
* Paint clippedText at textX, textY with the labels foreground color.
*
+ * @param l an instance of {@code JLabel}
+ * @param g an instance of {@code Graphics}
+ * @param s a text
+ * @param textX an X coordinate
+ * @param textY an Y coordinate
* @see #paint
* @see #paintDisabledText
*/
@@ -125,6 +138,11 @@
* Paint clippedText at textX, textY with background.lighter() and then
* shifted down and to the right by one pixel with background.darker().
*
+ * @param l an instance of {@code JLabel}
+ * @param g an instance of {@code Graphics}
+ * @param s a text
+ * @param textX an X coordinate
+ * @param textY an Y coordinate
* @see #paint
* @see #paintEnabledText
*/
@@ -329,26 +347,46 @@
public void uninstallUI(JComponent c) {
- uninstallDefaults((JLabel)c);
- uninstallComponents((JLabel)c);
- uninstallListeners((JLabel)c);
- uninstallKeyboardActions((JLabel)c);
+ uninstallDefaults((JLabel) c);
+ uninstallComponents((JLabel) c);
+ uninstallListeners((JLabel) c);
+ uninstallKeyboardActions((JLabel) c);
}
- protected void installDefaults(JLabel c){
- LookAndFeel.installColorsAndFont(c, "Label.background", "Label.foreground", "Label.font");
- LookAndFeel.installProperty(c, "opaque", Boolean.FALSE);
- }
+ /**
+ * Installs default properties.
+ *
+ * @param c an instance of {@code JLabel}
+ */
+ protected void installDefaults(JLabel c){
+ LookAndFeel.installColorsAndFont(c, "Label.background", "Label.foreground", "Label.font");
+ LookAndFeel.installProperty(c, "opaque", Boolean.FALSE);
+ }
+ /**
+ * Registers listeners.
+ *
+ * @param c an instance of {@code JLabel}
+ */
protected void installListeners(JLabel c){
c.addPropertyChangeListener(this);
}
+ /**
+ * Registers components.
+ *
+ * @param c an instance of {@code JLabel}
+ */
protected void installComponents(JLabel c){
BasicHTML.updateRenderer(c, c.getText());
c.setInheritsPopupMenu(true);
}
+ /**
+ * Registers keyboard actions.
+ *
+ * @param l an instance of {@code JLabel}
+ */
protected void installKeyboardActions(JLabel l) {
int dka = l.getDisplayedMnemonic();
Component lf = l.getLabelFor();
@@ -374,17 +412,37 @@
}
}
+ /**
+ * Uninstalls default properties.
+ *
+ * @param c an instance of {@code JLabel}
+ */
protected void uninstallDefaults(JLabel c){
}
+ /**
+ * Unregisters listeners.
+ *
+ * @param c an instance of {@code JLabel}
+ */
protected void uninstallListeners(JLabel c){
c.removePropertyChangeListener(this);
}
+ /**
+ * Unregisters components.
+ *
+ * @param c an instance of {@code JLabel}
+ */
protected void uninstallComponents(JLabel c){
BasicHTML.updateRenderer(c, "");
}
+ /**
+ * Unregisters keyboard actions.
+ *
+ * @param c an instance of {@code JLabel}
+ */
protected void uninstallKeyboardActions(JLabel c) {
SwingUtilities.replaceUIInputMap(c, JComponent.WHEN_FOCUSED, null);
SwingUtilities.replaceUIInputMap(c, JComponent.WHEN_IN_FOCUSED_WINDOW,
@@ -392,6 +450,12 @@
SwingUtilities.replaceUIActionMap(c, null);
}
+ /**
+ * Returns an instance of {@code BasicLabelUI}.
+ *
+ * @param c a component
+ * @return an instance of {@code BasicLabelUI}
+ */
public static ComponentUI createUI(JComponent c) {
if (System.getSecurityManager() != null) {
AppContext appContext = AppContext.getAppContext();
--- a/jdk/src/share/classes/javax/swing/plaf/basic/BasicScrollPaneUI.java Fri Jun 27 10:29:08 2014 -0700
+++ b/jdk/src/share/classes/javax/swing/plaf/basic/BasicScrollPaneUI.java Thu Jul 10 12:21:29 2014 +0400
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2014, 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,21 +52,40 @@
public class BasicScrollPaneUI
extends ScrollPaneUI implements ScrollPaneConstants
{
+ /**
+ * The instance of {@code JScrollPane}.
+ */
protected JScrollPane scrollpane;
+
+ /**
+ * {@code ChangeListener} installed on the vertical scrollbar.
+ */
protected ChangeListener vsbChangeListener;
+
+ /**
+ * {@code ChangeListener} installed on the horizontal scrollbar.
+ */
protected ChangeListener hsbChangeListener;
+
+ /**
+ * {@code ChangeListener} installed on the viewport.
+ */
protected ChangeListener viewportChangeListener;
+
+ /**
+ * {@code PropertyChangeListener} installed on the scroll pane.
+ */
protected PropertyChangeListener spPropertyChangeListener;
private MouseWheelListener mouseScrollListener;
private int oldExtent = Integer.MIN_VALUE;
/**
- * PropertyChangeListener installed on the vertical scrollbar.
+ * {@code PropertyChangeListener} installed on the vertical scrollbar.
*/
private PropertyChangeListener vsbPropertyChangeListener;
/**
- * PropertyChangeListener installed on the horizontal scrollbar.
+ * {@code PropertyChangeListener} installed on the horizontal scrollbar.
*/
private PropertyChangeListener hsbPropertyChangeListener;
@@ -79,7 +98,12 @@
*/
private boolean setValueCalled = false;
-
+ /**
+ * Returns a new instance of {@code BasicScrollPaneUI}.
+ *
+ * @param x a component.
+ * @return a new instance of {@code BasicScrollPaneUI}
+ */
public static ComponentUI createUI(JComponent x) {
return new BasicScrollPaneUI();
}
@@ -115,7 +139,11 @@
return new Dimension(Short.MAX_VALUE, Short.MAX_VALUE);
}
-
+ /**
+ * Installs default properties.
+ *
+ * @param scrollpane an instance of {@code JScrollPane}
+ */
protected void installDefaults(JScrollPane scrollpane)
{
LookAndFeel.installBorder(scrollpane, "ScrollPane.border");
@@ -132,7 +160,11 @@
LookAndFeel.installProperty(scrollpane, "opaque", Boolean.TRUE);
}
-
+ /**
+ * Registers listeners.
+ *
+ * @param c an instance of {@code JScrollPane}
+ */
protected void installListeners(JScrollPane c)
{
vsbChangeListener = createVSBChangeListener();
@@ -165,6 +197,11 @@
}
+ /**
+ * Registers keyboard actions.
+ *
+ * @param c an instance of {@code JScrollPane}
+ */
protected void installKeyboardActions(JScrollPane c) {
InputMap inputMap = getInputMap(JComponent.
WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
@@ -201,7 +238,11 @@
installKeyboardActions(scrollpane);
}
-
+ /**
+ * Uninstalls default properties.
+ *
+ * @param c an instance of {@code JScrollPane}
+ */
protected void uninstallDefaults(JScrollPane c) {
LookAndFeel.uninstallBorder(scrollpane);
@@ -210,7 +251,11 @@
}
}
-
+ /**
+ * Unregisters listeners.
+ *
+ * @param c a component
+ */
protected void uninstallListeners(JComponent c) {
JViewport viewport = scrollpane.getViewport();
JScrollBar vsb = scrollpane.getVerticalScrollBar();
@@ -242,7 +287,11 @@
handler = null;
}
-
+ /**
+ * Unregisters keyboard actions.
+ *
+ * @param c an instance of {@code JScrollPane}
+ */
protected void uninstallKeyboardActions(JScrollPane c) {
SwingUtilities.replaceUIActionMap(c, null);
SwingUtilities.replaceUIInputMap(c, JComponent.
@@ -264,6 +313,9 @@
return handler;
}
+ /**
+ * Synchronizes the {@code JScrollPane} with {@code Viewport}.
+ */
protected void syncScrollPaneWithViewport()
{
JViewport viewport = scrollpane.getViewport();
@@ -453,6 +505,11 @@
}
}
+ /**
+ * Returns an instance of viewport {@code ChangeListener}.
+ *
+ * @return an instance of viewport {@code ChangeListener}
+ */
protected ChangeListener createViewportChangeListener() {
return getHandler();
}
@@ -483,6 +540,11 @@
return getHandler();
}
+ /**
+ * Returns an instance of horizontal scroll bar {@code ChangeListener}.
+ *
+ * @return an instance of horizontal scroll bar {@code ChangeListener}
+ */
protected ChangeListener createHSBChangeListener() {
return getHandler();
}
@@ -514,6 +576,11 @@
return getHandler();
}
+ /**
+ * Returns an instance of vertical scroll bar {@code ChangeListener}.
+ *
+ * @return an instance of vertical scroll bar {@code ChangeListener}
+ */
protected ChangeListener createVSBChangeListener() {
return getHandler();
}
@@ -565,12 +632,21 @@
return getHandler();
}
+ /**
+ * Updates a scroll bar display policy.
+ *
+ * @param e the property change event
+ */
protected void updateScrollBarDisplayPolicy(PropertyChangeEvent e) {
scrollpane.revalidate();
scrollpane.repaint();
}
-
+ /**
+ * Updates viewport.
+ *
+ * @param e the property change event
+ */
protected void updateViewport(PropertyChangeEvent e)
{
JViewport oldViewport = (JViewport)(e.getOldValue());
@@ -599,7 +675,11 @@
}
}
-
+ /**
+ * Updates row header.
+ *
+ * @param e the property change event
+ */
protected void updateRowHeader(PropertyChangeEvent e)
{
JViewport newRowHead = (JViewport)(e.getNewValue());
@@ -611,7 +691,11 @@
}
}
-
+ /**
+ * Updates column header.
+ *
+ * @param e the property change event
+ */
protected void updateColumnHeader(PropertyChangeEvent e)
{
JViewport newColHead = (JViewport)(e.getNewValue());
@@ -679,9 +763,9 @@
/**
- * Creates an instance of PropertyChangeListener that's added to
- * the JScrollPane by installUI(). Subclasses can override this method
- * to return a custom PropertyChangeListener, e.g.
+ * Creates an instance of {@code PropertyChangeListener} that's added to
+ * the {@code JScrollPane} by {@code installUI()}. Subclasses can override
+ * this method to return a custom {@code PropertyChangeListener}, e.g.
* <pre>
* class MyScrollPaneUI extends BasicScrollPaneUI {
* protected PropertyChangeListener <b>createPropertyChangeListener</b>() {
@@ -698,6 +782,8 @@
* }
* </pre>
*
+ * @return an instance of {@code PropertyChangeListener}
+ *
* @see java.beans.PropertyChangeListener
* @see #installUI
*/
--- a/jdk/src/share/classes/javax/swing/plaf/basic/BasicSplitPaneDivider.java Fri Jun 27 10:29:08 2014 -0700
+++ b/jdk/src/share/classes/javax/swing/plaf/basic/BasicSplitPaneDivider.java Thu Jul 10 12:21:29 2014 +0400
@@ -65,9 +65,13 @@
{
/**
* Width or height of the divider based on orientation
- * BasicSplitPaneUI adds two to this.
+ * {@code BasicSplitPaneUI} adds two to this.
*/
protected static final int ONE_TOUCH_SIZE = 6;
+
+ /**
+ * The offset of the divider.
+ */
protected static final int ONE_TOUCH_OFFSET = 2;
/**
@@ -136,8 +140,10 @@
/**
- * Creates an instance of BasicSplitPaneDivider. Registers this
+ * Creates an instance of {@code BasicSplitPaneDivider}. Registers this
* instance for mouse events and mouse dragged events.
+ *
+ * @param ui an instance of {@code BasicSplitPaneUI}
*/
public BasicSplitPaneDivider(BasicSplitPaneUI ui) {
oneTouchSize = DefaultLookup.getInt(ui.getSplitPane(), ui,
@@ -163,7 +169,9 @@
}
/**
- * Sets the SplitPaneUI that is using the receiver.
+ * Sets the {@code SplitPaneUI} that is using the receiver.
+ *
+ * @param newUI the new {@code SplitPaneUI}
*/
public void setBasicSplitPaneUI(BasicSplitPaneUI newUI) {
if (splitPane != null) {
@@ -198,8 +206,9 @@
/**
- * Returns the <code>SplitPaneUI</code> the receiver is currently
- * in.
+ * Returns the {@code SplitPaneUI} the receiver is currently in.
+ *
+ * @return the {@code SplitPaneUI} the receiver is currently in
*/
public BasicSplitPaneUI getBasicSplitPaneUI() {
return splitPaneUI;
@@ -207,9 +216,11 @@
/**
- * Sets the size of the divider to <code>newSize</code>. That is
- * the width if the splitpane is <code>HORIZONTAL_SPLIT</code>, or
- * the height of <code>VERTICAL_SPLIT</code>.
+ * Sets the size of the divider to {@code newSize}. That is
+ * the width if the splitpane is {@code HORIZONTAL_SPLIT}, or
+ * the height of {@code VERTICAL_SPLIT}.
+ *
+ * @param newSize a new size
*/
public void setDividerSize(int newSize) {
dividerSize = newSize;
@@ -219,6 +230,8 @@
/**
* Returns the size of the divider, that is the width if the splitpane
* is HORIZONTAL_SPLIT, or the height of VERTICAL_SPLIT.
+ *
+ * @return the size of the divider
*/
public int getDividerSize() {
return dividerSize;
@@ -227,6 +240,8 @@
/**
* Sets the border of this component.
+ *
+ * @param border a new border
* @since 1.3
*/
public void setBorder(Border border) {
@@ -382,8 +397,10 @@
/**
- * Creates and return an instance of JButton that can be used to
+ * Creates and return an instance of {@code JButton} that can be used to
* collapse the left component in the split pane.
+ *
+ * @return an instance of {@code JButton}
*/
protected JButton createLeftOneTouchButton() {
JButton b = new JButton() {
@@ -438,8 +455,10 @@
/**
- * Creates and return an instance of JButton that can be used to
+ * Creates and return an instance of {@code JButton} that can be used to
* collapse the right component in the split pane.
+ *
+ * @return an instance of {@code JButton}
*/
protected JButton createRightOneTouchButton() {
JButton b = new JButton() {
@@ -503,6 +522,8 @@
/**
* Messages the BasicSplitPaneUI with dragDividerTo that this instance
* is contained in.
+ *
+ * @param location a location
*/
protected void dragDividerTo(int location) {
splitPaneUI.dragDividerTo(location);
@@ -512,6 +533,8 @@
/**
* Messages the BasicSplitPaneUI with finishDraggingTo that this instance
* is contained in.
+ *
+ * @param location a location
*/
protected void finishDraggingTo(int location) {
splitPaneUI.finishDraggingTo(location);
@@ -694,7 +717,11 @@
*/
int offset;
-
+ /**
+ * Constructs a new instance of {@code DragController}.
+ *
+ * @param e a mouse event
+ */
protected DragController(MouseEvent e) {
JSplitPane splitPane = splitPaneUI.getSplitPane();
Component leftC = splitPane.getLeftComponent();
@@ -741,7 +768,9 @@
/**
- * Returns true if the dragging session is valid.
+ * Returns {@code true} if the dragging session is valid.
+ *
+ * @return {@code true} if the dragging session is valid
*/
protected boolean isValid() {
return (maxX > 0);
@@ -751,6 +780,9 @@
/**
* Returns the new position to put the divider at based on
* the passed in MouseEvent.
+ *
+ * @param e a mouse event
+ * @return the new position
*/
protected int positionForMouseEvent(MouseEvent e) {
int newX = (e.getSource() == BasicSplitPaneDivider.this) ?
@@ -764,6 +796,10 @@
/**
* Returns the x argument, since this is used for horizontal
* splits.
+ *
+ * @param x an X coordinate
+ * @param y an Y coordinate
+ * @return the X argument
*/
protected int getNeededLocation(int x, int y) {
int newX;
@@ -772,7 +808,13 @@
return newX;
}
-
+ /**
+ * Messages dragDividerTo with the new location for the mouse
+ * event.
+ *
+ * @param newX an X coordinate
+ * @param newY an Y coordinate
+ */
protected void continueDrag(int newX, int newY) {
dragDividerTo(getNeededLocation(newX, newY));
}
@@ -781,12 +823,20 @@
/**
* Messages dragDividerTo with the new location for the mouse
* event.
+ *
+ * @param e a mouse event
*/
protected void continueDrag(MouseEvent e) {
dragDividerTo(positionForMouseEvent(e));
}
-
+ /**
+ * Messages finishDraggingTo with the new location for the mouse
+ * event.
+ *
+ * @param x an X coordinate
+ * @param y an Y coordinate
+ */
protected void completeDrag(int x, int y) {
finishDraggingTo(getNeededLocation(x, y));
}
@@ -795,6 +845,8 @@
/**
* Messages finishDraggingTo with the new location for the mouse
* event.
+ *
+ * @param e a mouse event
*/
protected void completeDrag(MouseEvent e) {
finishDraggingTo(positionForMouseEvent(e));
@@ -813,6 +865,11 @@
protected class VerticalDragController extends DragController
{
/* DragControllers ivars are now in terms of y, not x. */
+ /**
+ * Constructs a new instance of {@code VerticalDragController}.
+ *
+ * @param e a mouse event
+ */
protected VerticalDragController(MouseEvent e) {
super(e);
JSplitPane splitPane = splitPaneUI.getSplitPane();
--- a/jdk/src/share/classes/javax/swing/plaf/basic/BasicTableUI.java Fri Jun 27 10:29:08 2014 -0700
+++ b/jdk/src/share/classes/javax/swing/plaf/basic/BasicTableUI.java Thu Jul 10 12:21:29 2014 +0400
@@ -64,12 +64,29 @@
//
// The JTable that is delegating the painting to this UI.
+ /**
+ * The instance of {@code JTable}.
+ */
protected JTable table;
+
+ /**
+ * The instance of {@code CellRendererPane}.
+ */
protected CellRendererPane rendererPane;
- // Listeners that are attached to the JTable
+ /**
+ * {@code KeyListener} that are attached to the {@code JTable}.
+ */
protected KeyListener keyListener;
+
+ /**
+ * {@code FocusListener} that are attached to the {@code JTable}.
+ */
protected FocusListener focusListener;
+
+ /**
+ * {@code MouseInputListener} that are attached to the {@code JTable}.
+ */
protected MouseInputListener mouseInputListener;
private Handler handler;
@@ -1350,21 +1367,27 @@
}
/**
- * Creates the key listener for handling keyboard navigation in the JTable.
+ * Creates the key listener for handling keyboard navigation in the {@code JTable}.
+ *
+ * @return the key listener for handling keyboard navigation in the {@code JTable}
*/
protected KeyListener createKeyListener() {
return null;
}
/**
- * Creates the focus listener for handling keyboard navigation in the JTable.
+ * Creates the focus listener for handling keyboard navigation in the {@code JTable}.
+ *
+ * @return the focus listener for handling keyboard navigation in the {@code JTable}
*/
protected FocusListener createFocusListener() {
return getHandler();
}
/**
- * Creates the mouse listener for the JTable.
+ * Creates the mouse listener for the {@code JTable}.
+ *
+ * @return the mouse listener for the {@code JTable}
*/
protected MouseInputListener createMouseInputListener() {
return getHandler();
@@ -1374,6 +1397,12 @@
// The installation/uninstall procedures and support
//
+ /**
+ * Returns a new instance of {@code BasicTableUI}.
+ *
+ * @param c a component
+ * @return a new instance of {@code BasicTableUI}
+ */
public static ComponentUI createUI(JComponent c) {
return new BasicTableUI();
}
@@ -1616,12 +1645,18 @@
table = null;
}
+ /**
+ * Uninstalls default properties.
+ */
protected void uninstallDefaults() {
if (table.getTransferHandler() instanceof UIResource) {
table.setTransferHandler(null);
}
}
+ /**
+ * Unregisters listeners.
+ */
protected void uninstallListeners() {
table.removeFocusListener(focusListener);
table.removeKeyListener(keyListener);
@@ -1638,6 +1673,9 @@
handler = null;
}
+ /**
+ * Unregisters keyboard actions.
+ */
protected void uninstallKeyboardActions() {
SwingUtilities.replaceUIInputMap(table, JComponent.
WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, null);