Jitsi: the OpenSource Java VoIP and Instant Messaging client.

net.java.sip.communicator.impl.gui.main.contactlist
Class SearchFieldUI

java.lang.Object
  extended by javax.swing.plaf.ComponentUI
      extended by javax.swing.plaf.TextUI
          extended by javax.swing.plaf.basic.BasicTextUI
              extended by javax.swing.plaf.basic.BasicTextFieldUI
                  extended by javax.swing.plaf.metal.MetalTextFieldUI
                      extended by net.java.sip.communicator.util.swing.plaf.SIPCommTextFieldUI
                          extended by net.java.sip.communicator.impl.gui.main.contactlist.SearchFieldUI
All Implemented Interfaces:
MouseListener, MouseMotionListener, EventListener, ViewFactory, Skinnable

public class SearchFieldUI
extends SIPCommTextFieldUI
implements Skinnable

The SearchTextFieldUI is the one responsible for the search field look & feel. It draws a search icon inside the field and adjusts the bounds of the editor rectangle according to it.

Author:
Yana Stamcheva, Adam Netocny

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.plaf.basic.BasicTextUI
BasicTextUI.BasicCaret, BasicTextUI.BasicHighlighter
 
Field Summary
 
Fields inherited from class net.java.sip.communicator.util.swing.plaf.SIPCommTextFieldUI
BUTTON_GAP, deleteButton, isDeleteMouseOver
 
Constructor Summary
SearchFieldUI()
          Creates a SIPCommTextFieldUI.
 
Method Summary
static ComponentUI createUI(JComponent c)
          Creates a UI for a SearchFieldUI.
protected  void customPaintBackground(Graphics g)
          Paints the background of the associated component.
protected  Rectangle getCallButtonRect()
          Calculates the call button rectangle.
protected  Rectangle getVisibleEditorRect()
          If we are in the case of disabled delete button, we simply call the parent implementation of this method, otherwise we recalculate the editor rectangle in order to leave place for the delete button.
 void loadSkin()
          Reloads UI icons.
 void mouseClicked(MouseEvent e)
          Updates the call button when the mouse was clicked.
 void mouseDragged(MouseEvent e)
          Updates the delete icon when the mouse is dragged over.
 void mouseEntered(MouseEvent e)
          Updates the call button when the mouse is enters the component area.
 void mouseExited(MouseEvent e)
          Updates the call button when the mouse exits the component area.
 void mouseMoved(MouseEvent e)
          Updates the delete icon when the mouse is moved over.
 void mousePressed(MouseEvent e)
           
 void mouseReleased(MouseEvent e)
           
protected  void paintSafely(Graphics g)
          Implements parent paintSafely method and enables antialiasing.
 
Methods inherited from class net.java.sip.communicator.util.swing.plaf.SIPCommTextFieldUI
getDeleteButtonRect, installListeners, isDeleteButtonEnabled, setBgBorderEndColor, setBgBorderStartColor, setBgEndColor, setBgStartColor, setDeleteButtonEnabled, uninstallListeners, updateDeleteIcon
 
Methods inherited from class javax.swing.plaf.metal.MetalTextFieldUI
propertyChange
 
Methods inherited from class javax.swing.plaf.basic.BasicTextFieldUI
create, getBaseline, getBaselineResizeBehavior, getPropertyPrefix
 
Methods inherited from class javax.swing.plaf.basic.BasicTextUI
create, createCaret, createHighlighter, createKeymap, damageRange, damageRange, getComponent, getEditorKit, getKeymapName, getMaximumSize, getMinimumSize, getNextVisualPositionFrom, getPreferredSize, getRootView, getToolTipText, installDefaults, installKeyboardActions, installUI, modelChanged, modelToView, modelToView, paint, paintBackground, setView, uninstallDefaults, uninstallKeyboardActions, uninstallUI, update, viewToModel, viewToModel
 
Methods inherited from class javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SearchFieldUI

public SearchFieldUI()
Creates a SIPCommTextFieldUI.

Method Detail

paintSafely

protected void paintSafely(Graphics g)
Implements parent paintSafely method and enables antialiasing.

Overrides:
paintSafely in class BasicTextUI
Parameters:
g - the Graphics object that notified us

customPaintBackground

protected void customPaintBackground(Graphics g)
Paints the background of the associated component.

Overrides:
customPaintBackground in class SIPCommTextFieldUI
Parameters:
g - the Graphics object used for painting

getVisibleEditorRect

protected Rectangle getVisibleEditorRect()
If we are in the case of disabled delete button, we simply call the parent implementation of this method, otherwise we recalculate the editor rectangle in order to leave place for the delete button.

Overrides:
getVisibleEditorRect in class SIPCommTextFieldUI
Returns:
the visible editor rectangle

mouseClicked

public void mouseClicked(MouseEvent e)
Updates the call button when the mouse was clicked.

Specified by:
mouseClicked in interface MouseListener
Overrides:
mouseClicked in class SIPCommTextFieldUI
Parameters:
e - the MouseEvent that notified us of the click

mouseEntered

public void mouseEntered(MouseEvent e)
Updates the call button when the mouse is enters the component area.

Specified by:
mouseEntered in interface MouseListener
Overrides:
mouseEntered in class SIPCommTextFieldUI
Parameters:
e - the MouseEvent that notified us

mouseExited

public void mouseExited(MouseEvent e)
Updates the call button when the mouse exits the component area.

Specified by:
mouseExited in interface MouseListener
Overrides:
mouseExited in class SIPCommTextFieldUI
Parameters:
e - the MouseEvent that notified us

mousePressed

public void mousePressed(MouseEvent e)
Specified by:
mousePressed in interface MouseListener
Overrides:
mousePressed in class SIPCommTextFieldUI

mouseReleased

public void mouseReleased(MouseEvent e)
Specified by:
mouseReleased in interface MouseListener
Overrides:
mouseReleased in class SIPCommTextFieldUI

mouseDragged

public void mouseDragged(MouseEvent e)
Updates the delete icon when the mouse is dragged over.

Specified by:
mouseDragged in interface MouseMotionListener
Overrides:
mouseDragged in class SIPCommTextFieldUI
Parameters:
e - the MouseEvent that notified us

mouseMoved

public void mouseMoved(MouseEvent e)
Updates the delete icon when the mouse is moved over.

Specified by:
mouseMoved in interface MouseMotionListener
Overrides:
mouseMoved in class SIPCommTextFieldUI
Parameters:
e - the MouseEvent that notified us

getCallButtonRect

protected Rectangle getCallButtonRect()
Calculates the call button rectangle.

Returns:
the call button rectangle

loadSkin

public void loadSkin()
Reloads UI icons.

Specified by:
loadSkin in interface Skinnable
Overrides:
loadSkin in class SIPCommTextFieldUI

createUI

public static ComponentUI createUI(JComponent c)
Creates a UI for a SearchFieldUI.

Parameters:
c - the text field
Returns:
the UI

Jitsi: the OpenSource Java VoIP and Instant Messaging client.

Jitsi, the OpenSource Java VoIP and Instant Messaging client.
Distributable under LGPL license.