org.geotoolkit.gui.swing.referencing
Class AuthorityCodesComboBox

Object
  extended by Component
      extended by Container
          extended by JComponent
              extended by WindowCreator
                  extended by AuthorityCodesComboBox
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable

public class AuthorityCodesComboBox
extends WindowCreator

A combo box for selecting a coordinate reference system from a list. This component also provides a search button (for filtering the CRS name that contain the specified keywords) and a info button displaying the CRS properties sheet.

Since:
2.3
Version:
3.16
Author:
Martin Desruisseaux (IRD, Geomatys)
See Also:
Serialized Form
Module:
display/geotk-widgets-swing (download)    View source code for this class

Nested Class Summary
 
Nested classes/interfaces inherited from class WindowCreator
WindowCreator.Handler
 
Nested classes/interfaces inherited from class JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
static String SELECTED_CODE_PROPERTY
          The key for listening to changes in the combo box selection.
 
Fields inherited from class JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
AuthorityCodesComboBox()
          Creates a CRS chooser backed by the EPSG authority factory.
AuthorityCodesComboBox(AuthorityFactory factory)
          Creates a CRS chooser backed by the specified authority factory.
AuthorityCodesComboBox(AuthorityFactory factory, Class<? extends CoordinateReferenceSystem>... types)
          Creates a chooser for objects of the given types backed by the specified authority factory.
AuthorityCodesComboBox(String authority)
          Creates a CRS chooser backed by the specified authority factory.
 
Method Summary
 void filter(String keywords)
          Displays only the CRS name that contains the specified keywords.
 String getAuthority()
          Returns the authority name.
 String getSelectedCode()
          Returns the code for the selected object, or null if none.
 IdentifiedObject getSelectedItem()
          Returns the selected object, usually as a CoordinateReferenceSystem.
 void setSelectedCode(String code)
          Sets the selected object to the one having the given code.
 
Methods inherited from class WindowCreator
getDefaultWindowHandler, getWindowHandler, setDefaultWindowHandler, setWindowHandler
 
Methods inherited from class JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI
 
Methods inherited from class Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, 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 Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

SELECTED_CODE_PROPERTY

public static final String SELECTED_CODE_PROPERTY
The key for listening to changes in the combo box selection. This event may occurs as a result of client selection, or of explicit call to setSelectedCode(String). The values in the event are authority codes (not fully constructed CRS objects).

Client can listen for those changes with the following code: java chooser.addPropertyChangeListener(SELECTED_CODE_PROPERTY, listener);

Since:
3.16
See Also:
Constant Field Values
Constructor Detail

AuthorityCodesComboBox

public AuthorityCodesComboBox()
                       throws FactoryRegistryException
Creates a CRS chooser backed by the EPSG authority factory.

Throws:
FactoryRegistryException - if no EPSG authority factory has been found.

AuthorityCodesComboBox

public AuthorityCodesComboBox(String authority)
                       throws FactoryRegistryException
Creates a CRS chooser backed by the specified authority factory.

Parameters:
authority - The authority identifier (e.g. "EPSG").
Throws:
FactoryRegistryException - if no authority factory has been found.
Since:
2.4

AuthorityCodesComboBox

public AuthorityCodesComboBox(AuthorityFactory factory)
Creates a CRS chooser backed by the specified authority factory.

Parameters:
factory - The authority factory responsible for creating objects from a list of codes.

AuthorityCodesComboBox

public AuthorityCodesComboBox(AuthorityFactory factory,
                              Class<? extends CoordinateReferenceSystem>... types)
Creates a chooser for objects of the given types backed by the specified authority factory.

Parameters:
factory - The authority factory responsible for creating objects from a list of codes.
types - The types of CRS object to includes in the list.
Method Detail

getAuthority

public String getAuthority()
Returns the authority name. This is useful for example in order to provide a window title.

Multi-threading
This method can be safely invoked from any thread - not necessarily the Swing thread. This is assuming that the Authority Factory provided at construction time is thread-safe, but this is the case of all Geotk implementations.

Returns:
The current authority name.

getSelectedCode

public String getSelectedCode()
Returns the code for the selected object, or null if none.

Multi-threading
This method can be safely invoked from any thread - not necessarily the Swing thread. This is a requirement for allowing getSelectedItem() to be safely invoked from a background thread.

Returns:
The code of the currently selected object.

setSelectedCode

public void setSelectedCode(String code)
Sets the selected object to the one having the given code. If the given object is null, then this method clears the selection.

Parameters:
code - The authority code of the object to set as the selected index, or null.
Since:
3.12

getSelectedItem

public IdentifiedObject getSelectedItem()
                                 throws FactoryException
Returns the selected object, usually as a CoordinateReferenceSystem. The default implementation creates the object identified by the value returned by getSelectedCode(). Subclasses can override any of the getSelectedCode() or getSelectedItem() methods if different objects should be created.

Multi-threading
This method can be safely invoked from any thread - not necessarily the Swing thread. This is assuming that the Authority Factory provided at construction time is thread-safe, but this is the case of all Geotk implementations.

Returns:
The currently selected object.
Throws:
FactoryException - if the factory can't create the selected object.

filter

public void filter(String keywords)
Displays only the CRS name that contains the specified keywords. The keywords argument is a space-separated list, usually provided by the user after he pressed the "Search" button.

Parameters:
keywords - space-separated list of keywords to look for.


Copyright © 2009-2012 Geotoolkit.org. All Rights Reserved.