org.openswing.swing.client
Class ComboBoxControl

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.JPanel
                  extended byorg.openswing.swing.client.BaseInputControl
                      extended byorg.openswing.swing.client.ComboBoxControl
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.image.ImageObserver, InputControl, java.awt.MenuContainer, SearchControl, java.io.Serializable

public class ComboBoxControl
extends BaseInputControl
implements InputControl, SearchControl

Title: OpenSwing Framework

Description: Combo box input control: its items are retrieved from ClientSettings.getDomain method, that uses domainId property to identify the correct domain to use.

Copyright: Copyright (C) 2006 Mauro Carniel

This file is part of OpenSwing Framework. This library is free software; you can redistribute it and/or modify it under the terms of the (LGPL) Lesser General Public License as published by the Free Software Foundation; GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999 This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author may be contacted at: maurocarniel@tin.it

See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Field Summary
 
Fields inherited from class javax.swing.JComponent
TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
ComboBoxControl()
          Contructor.
 
Method Summary
 void addActionListener(java.awt.event.ActionListener l)
          Adds the specified action listener to receive action events from this textfield.
 void addFocusListener(java.awt.event.FocusListener l)
          Adds the specified focus listener to receive focus events from this component when this component gains input focus.
 void addItemListener(java.awt.event.ItemListener alistener)
          Adds an ItemListener.
 boolean disableListener()
           
 javax.swing.JComponent getBindingComponent()
           
 javax.swing.JComboBox getComboBox()
           
 javax.swing.JComponent getComponent()
           
 Domain getDomain()
           
 java.lang.String getDomainId()
           
 int getRowCount()
           
 int getSelectedIndex()
           
 java.awt.ComponentOrientation getTextOrientation()
           
 java.lang.Object getValue()
           
 java.lang.String getValueAt(int index)
           
 boolean isEnabled()
           
 boolean isNullAsDefaultValue()
           
 boolean isReadOnly()
           
 boolean isTranslateItemDescriptions()
           
 void removeActionListener(java.awt.event.ActionListener l)
          Removes the specified action listener so that it no longer receives action events from this textfield.
 void removeFocusListener(java.awt.event.FocusListener l)
          Removes the specified focus listener so that it no longer receives focus events from this component.
 void removeItemListener(java.awt.event.ItemListener alistener)
          Removes an ItemListener.
 int search(java.lang.String textToSeach)
          Method invoked by SearchWindowManager when the specified "textToSeach" pattern has not matchings in the current content of binded control.
 void setDomain(Domain domain)
          Set the specified domain and retrieve the combo items from the domain.
 void setDomainId(java.lang.String domainId)
          Set the domain identifier, so the control can retrieve its items from the domain.
 void setEnabled(boolean enabled)
          Set current input control abilitation.
 void setNullAsDefaultValue(boolean nullAsDefaultValue)
          Define if in insert mode combo box has no item selected.
 void setSelectedIndex(int index)
          Set the selected index.
 void setTextOrientation(java.awt.ComponentOrientation o)
          Set the component orientation: from left to right or from right to left.
 void setTranslateItemDescriptions(boolean translateItemDescriptions)
          Define if description in combo items must be translated; default value: true.
 void setValue(java.lang.Object code)
          Select the combo item related to the specified code.
 
Methods inherited from class org.openswing.swing.client.BaseInputControl
addValueChangedListener, getAttributeName, getFont, getLinkLabel, getTextAlignment, getToolTipText, getValueChangeListeners, isCanCopy, isChanged, isEnabledOnEdit, isEnabledOnInsert, isRequired, removeValueChangedListener, requestFocus, setAttributeName, setCanCopy, setChanged, setEnabledOnEdit, setEnabledOnInsert, setFont, setLinkLabel, setRequired, setTextAlignment, setToolTipText
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setTransferHandler, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setLayout, transferFocusBackward, transferFocusDownCycle, validate
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, remove, removeComponentListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.openswing.swing.client.InputControl
addValueChangedListener, getAttributeName, getLinkLabel, getValueChangeListeners, isCanCopy, isChanged, isEnabledOnEdit, isEnabledOnInsert, isRequired, removeValueChangedListener, setAttributeName, setCanCopy, setChanged, setEnabledOnEdit, setEnabledOnInsert, setLinkLabel
 

Constructor Detail

ComboBoxControl

public ComboBoxControl()
Contructor.

Method Detail

setDomainId

public final void setDomainId(java.lang.String domainId)
Set the domain identifier, so the control can retrieve its items from the domain.

Parameters:
domainId - domain identifier

setDomain

public final void setDomain(Domain domain)
Set the specified domain and retrieve the combo items from the domain.

Parameters:
domain - domain to use to retrieve the combo items

getDomainId

public final java.lang.String getDomainId()
Returns:
domain identifier

setValue

public final void setValue(java.lang.Object code)
Select the combo item related to the specified code.

Specified by:
setValue in interface InputControl
Overrides:
setValue in class BaseInputControl
Parameters:
code - used to retrieve the corresponding item and to select that item in the combo

getValue

public final java.lang.Object getValue()
Specified by:
getValue in interface InputControl
Overrides:
getValue in class BaseInputControl
Returns:
code related to the selected combo item; it return null if no item is selected

getComboBox

public final javax.swing.JComboBox getComboBox()
Returns:
combo box

setEnabled

public void setEnabled(boolean enabled)
Description copied from interface: InputControl
Set current input control abilitation.

Specified by:
setEnabled in interface InputControl
Overrides:
setEnabled in class BaseInputControl

isEnabled

public final boolean isEnabled()
Specified by:
isEnabled in interface InputControl
Overrides:
isEnabled in class BaseInputControl
Returns:
current input control abilitation

getBindingComponent

public javax.swing.JComponent getBindingComponent()
Overrides:
getBindingComponent in class BaseInputControl
Returns:
component inside this whose contains the value

addFocusListener

public final void addFocusListener(java.awt.event.FocusListener l)
Adds the specified focus listener to receive focus events from this component when this component gains input focus. If listener l is null, no exception is thrown and no action is performed.

Specified by:
addFocusListener in interface InputControl
Parameters:
l - the focus listener
Since:
JDK1.1
See Also:
FocusEvent, FocusListener, removeFocusListener(java.awt.event.FocusListener), Component.getFocusListeners()

removeFocusListener

public final void removeFocusListener(java.awt.event.FocusListener l)
Removes the specified focus listener so that it no longer receives focus events from this component. This method performs no function, nor does it throw an exception, if the listener specified by the argument was not previously added to this component. If listener l is null, no exception is thrown and no action is performed.

Specified by:
removeFocusListener in interface InputControl
Parameters:
l - the focus listener
Since:
JDK1.1
See Also:
FocusEvent, FocusListener, addFocusListener(java.awt.event.FocusListener), Component.getFocusListeners()

addActionListener

public final void addActionListener(java.awt.event.ActionListener l)
Adds the specified action listener to receive action events from this textfield.

Parameters:
l - the action listener to be added

removeActionListener

public final void removeActionListener(java.awt.event.ActionListener l)
Removes the specified action listener so that it no longer receives action events from this textfield.

Parameters:
l - the action listener to be removed

addItemListener

public final void addItemListener(java.awt.event.ItemListener alistener)
Adds an ItemListener.

aListener will receive one or two ItemEvents when the selected item changes.

See Also:
#setSelectedItem

removeItemListener

public final void removeItemListener(java.awt.event.ItemListener alistener)
Removes an ItemListener.


isNullAsDefaultValue

public final boolean isNullAsDefaultValue()
Returns:
define if in insert mode combo box has no item selected

setNullAsDefaultValue

public final void setNullAsDefaultValue(boolean nullAsDefaultValue)
Define if in insert mode combo box has no item selected.

Parameters:
nullAsDefaultValue - define if in insert mode combo box has no item selected

getDomain

public final Domain getDomain()
Returns:
domain to use to retrieve the combo items

getSelectedIndex

public final int getSelectedIndex()
Specified by:
getSelectedIndex in interface SearchControl
Returns:
the selected index in the input control

setSelectedIndex

public final void setSelectedIndex(int index)
Set the selected index.

Specified by:
setSelectedIndex in interface SearchControl

getRowCount

public final int getRowCount()
Specified by:
getRowCount in interface SearchControl
Returns:
total rows count in the input control

getValueAt

public final java.lang.String getValueAt(int index)
Specified by:
getValueAt in interface SearchControl
Returns:
the element at the specified index, converted in String format

getComponent

public final javax.swing.JComponent getComponent()
Specified by:
getComponent in interface SearchControl
Returns:
combo control

isReadOnly

public final boolean isReadOnly()
Specified by:
isReadOnly in interface SearchControl
Returns:
true if the input control is in read only mode (so search is enabled), false otherwise

disableListener

public final boolean disableListener()
Specified by:
disableListener in interface SearchControl
Returns:
true to disable key listening on input control (for instance, in case of nested grids), false to listen for key events

isTranslateItemDescriptions

public final boolean isTranslateItemDescriptions()
Returns:
define if description in combo items must be translated

setTranslateItemDescriptions

public final void setTranslateItemDescriptions(boolean translateItemDescriptions)
Define if description in combo items must be translated; default value: true.

Parameters:
translateItemDescriptions - flag used to define if description in combo items must be translated

search

public final int search(java.lang.String textToSeach)
Method invoked by SearchWindowManager when the specified "textToSeach" pattern has not matchings in the current content of binded control. This callback can be used to retrieve additional data into control and to search inside new data.

Specified by:
search in interface SearchControl
Parameters:
textToSeach - patten of text to search
Returns:
-1 if no additional data is available, otherwise the row index of data just added that satify the pattern

setTextOrientation

public final void setTextOrientation(java.awt.ComponentOrientation o)
Set the component orientation: from left to right or from right to left.

Parameters:
o - component orientation

getTextOrientation

public final java.awt.ComponentOrientation getTextOrientation()
Returns:
component orientation