org.jdesktop.swingx.plaf
Class SearchFieldUI

java.lang.Object
  extended by javax.swing.plaf.ComponentUI
      extended by javax.swing.plaf.TextUI
          extended by org.jdesktop.swingx.plaf.PromptTextUI
              extended by org.jdesktop.swingx.plaf.PromptTextFieldUI
                  extended by org.jdesktop.swingx.plaf.BuddyTextFieldUI
                      extended by org.jdesktop.swingx.plaf.SearchFieldUI

public class SearchFieldUI
extends BuddyTextFieldUI

The default JXSearchField UI delegate.

Author:
Peter Weishapl

Nested Class Summary
 
Nested classes/interfaces inherited from class org.jdesktop.swingx.plaf.PromptTextUI
PromptTextUI.PainterHighlighter
 
Field Summary
static java.awt.Insets NO_INSETS
           
protected  JXSearchField searchField
          The search field that we're a UI delegate for.
 
Fields inherited from class org.jdesktop.swingx.plaf.BuddyTextFieldUI
layoutAndBorder
 
Fields inherited from class org.jdesktop.swingx.plaf.PromptTextUI
delegate, promptComponent
 
Constructor Summary
SearchFieldUI(javax.swing.plaf.TextUI delegate)
           
 
Method Summary
protected  javax.swing.JButton clearButton()
          Convienence method.
protected  BuddyLayoutAndBorder createBuddyLayoutAndBorder()
           
protected  javax.swing.Icon getNewIcon(javax.swing.Icon icon, java.lang.String resKey)
          Convience method for only replacing icons if they have not been customized by the user.
protected  int getPopupOffset()
          Returns the number of pixels between the popup button and the clear (or search) button as specified in the default table by 'SearchField.popupOffset'.
protected  void installDefaults()
          Initialize the search fields various properties based on the corresponding "SearchField.*" properties from defaults table.
 void installUI(javax.swing.JComponent c)
          Calls installDefaults(), adds the search, clear and popup button to the search field and registers a PropertyChangeListener ad DocumentListener and an ActionListener on the popup button.
protected  javax.swing.JButton popupButton()
          Convienence method.
protected  javax.swing.JButton searchButton()
          Convienence method.
protected  boolean shouldReplaceResource(java.lang.Object o)
          Returns true if o is null or of instance UIResource.
 void uninstallUI(javax.swing.JComponent c)
          Removes all installed listeners, the layout and resets the search field original border and removes all children.
protected  void updateButtons()
          Sets the visibility of the search, clear and popup buttons depending on the search mode, layout stye, search text, search popup menu and the use of a seperate popup button.
 boolean usingSeperatePopupButton()
          Returns true if JXSearchField.isUseSeperatePopupButton() is true and a search popup menu has been set.
 
Methods inherited from class org.jdesktop.swingx.plaf.BuddyTextFieldUI
getPreferredSize, paint
 
Methods inherited from class org.jdesktop.swingx.plaf.PromptTextFieldUI
createPromptComponent, getPromptComponent
 
Methods inherited from class org.jdesktop.swingx.plaf.PromptTextUI
contains, damageRange, damageRange, equals, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getEditorKit, getMaximumSize, getMinimumSize, getNextVisualPositionFrom, getRootView, getToolTipText, hashCode, modelToView, modelToView, paintPromptComponent, shouldPaintPrompt, toString, update, viewToModel, viewToModel
 
Methods inherited from class javax.swing.plaf.ComponentUI
createUI, getBaselineResizeBehavior
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

searchField

protected JXSearchField searchField
The search field that we're a UI delegate for. Initialized by the installUI method, and reset to null by uninstallUI.

See Also:
installUI(javax.swing.JComponent), uninstallUI(javax.swing.JComponent)

NO_INSETS

public static final java.awt.Insets NO_INSETS
Constructor Detail

SearchFieldUI

public SearchFieldUI(javax.swing.plaf.TextUI delegate)
Method Detail

installUI

public void installUI(javax.swing.JComponent c)
Calls installDefaults(), adds the search, clear and popup button to the search field and registers a PropertyChangeListener ad DocumentListener and an ActionListener on the popup button.

Overrides:
installUI in class BuddyTextFieldUI

createBuddyLayoutAndBorder

protected BuddyLayoutAndBorder createBuddyLayoutAndBorder()
Overrides:
createBuddyLayoutAndBorder in class BuddyTextFieldUI

installDefaults

protected void installDefaults()
Initialize the search fields various properties based on the corresponding "SearchField.*" properties from defaults table. The JXSearchFields layout is set to the value returned by createLayout. Also calls #replaceBorderIfNecessary() and updateButtons(). This method is called by installUI(JComponent).

See Also:
installUI(javax.swing.JComponent), #createLayout, JXSearchField.customSetUIProperty(String, Object)

uninstallUI

public void uninstallUI(javax.swing.JComponent c)
Removes all installed listeners, the layout and resets the search field original border and removes all children.

Overrides:
uninstallUI in class BuddyTextFieldUI

shouldReplaceResource

protected boolean shouldReplaceResource(java.lang.Object o)
Returns true if o is null or of instance UIResource.

Parameters:
o - an object
Returns:
true if o is null or of instance UIResource

getNewIcon

protected javax.swing.Icon getNewIcon(javax.swing.Icon icon,
                                      java.lang.String resKey)
Convience method for only replacing icons if they have not been customized by the user. Returns the icon from the defaults table belonging to resKey, if shouldReplaceResource(Object) with the icon as a parameter returns true. Otherwise returns icon.

Parameters:
icon - the current icon
resKey - the resource key identifying the default icon
Returns:
the new icon

clearButton

protected final javax.swing.JButton clearButton()
Convienence method.

Returns:
the clear button
See Also:
JXSearchField.getCancelButton()

searchButton

protected final javax.swing.JButton searchButton()
Convienence method.

Returns:
the search button
See Also:
JXSearchField.getFindButton()

popupButton

protected final javax.swing.JButton popupButton()
Convienence method.

Returns:
the popup button
See Also:
JXSearchField.getPopupButton()

usingSeperatePopupButton

public boolean usingSeperatePopupButton()
Returns true if JXSearchField.isUseSeperatePopupButton() is true and a search popup menu has been set.

Returns:
the popup button is used in addition to the search button

getPopupOffset

protected int getPopupOffset()
Returns the number of pixels between the popup button and the clear (or search) button as specified in the default table by 'SearchField.popupOffset'. Returns 0 if usingSeperatePopupButton() returns false

Returns:
number of pixels between the popup button and the clear (or search) button

updateButtons

protected void updateButtons()
Sets the visibility of the search, clear and popup buttons depending on the search mode, layout stye, search text, search popup menu and the use of a seperate popup button. Also resets the search buttons pressed and rollover icons if the search field is in regular search mode or clears the icons when the search field is in instant search mode.



Copyright © 2011. All Rights Reserved.