schmitzm.geotools.gui
Class FeatureLayerFilterDialog

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Dialog
                  extended by javax.swing.JDialog
                      extended by schmitzm.geotools.gui.FeatureLayerFilterDialog
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible, RootPaneContainer, WindowConstants, CaptionsChangeable

public class FeatureLayerFilterDialog
extends JDialog
implements CaptionsChangeable

Diese Klasse stellt einen Dialog dar, in dem eine FeatureCollection ueber eine Formel gefiltert werden kann. Beim Anwenden des Filters wird ein FeatureSelectedEvent ausgeloest, auf das z.B. mit dem Einfuegen eines neuen Layers reagiert werden kann.

Version:
1.0
Author:
Martin Schmitz (University of Bonn/Germany)
See Also:
FeatureCollectionFilterPanel, Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JDialog
JDialog.AccessibleJDialog
 
Nested classes/interfaces inherited from class java.awt.Dialog
Dialog.AccessibleAWTDialog, Dialog.ModalExclusionType, Dialog.ModalityType
 
Nested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
static String APPLY_BUTTON
          Key, um den ÜBERNEHMEN-Button des FeatureCollection-Filter-Dialogs in der CaptionsChangeable-Map anzusprechen.
protected  JButton applyButton
          Der ANWENDEN-Button.
static String CANCEL_BUTTON
          Key, um den ABBRECHEN-Button des FeatureCollection-Filter-Dialogs in der CaptionsChangeable-Map anzusprechen.
protected  JButton cancelButton
          Der ABBRECHEN-Button.
static String DIALOG_TITLE
          Key, um den Titel des FeatureCollection-Filter-Dialogs in der CaptionsChangeable-Map anzusprechen.
protected  FeatureCollectionFilterPanel filterPanel
          Panel in dem der Filter definiert und getestet werden kann.
static String OK_BUTTON
          Key, um den OK-Button des FeatureCollection-Filter-Dialogs in der CaptionsChangeable-Map anzusprechen.
protected  JButton okButton
          Der OK-Button.
 
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Dialog
DEFAULT_MODALITY_TYPE
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
  FeatureLayerFilterDialog(Window parent, JMapPane mapPane, MapLayer mapLayer)
          Erzeugt einen neuen Dialog.
protected FeatureLayerFilterDialog(Window parent, JMapPane mapPane, MapLayer mapLayer, boolean initGUI)
          Erzeugt einen neuen Dialog.
 
Method Summary
protected  boolean acceptOperator(String operator)
          Kann von Sub-Klassen ueberschrieben werden, um bestimmte Operatoren in der Auswahl-Liste auszublenden.
 FeatureCollectionFilterPanel getFeatureCollectionFilterPanel()
          Liefert das Panel, in dem der Filter definiert und die Vorschau angezeigt wird.
 Filter getFilter()
          Liefert den Filter der aktuell im Dialog eingegebenen Formel.
 String getFilterRule()
          Liefert die aktuell im Dialog eingegebene Formel.
 MapLayer getMapLayer()
          Liefert das Layer, aus dem die FeatureCollection stammt auf der der Filter definiert wird.
 JMapPane getMapPane()
          Liefert das MapPane, fuer das FeatureSelectedEvents ausgeloest werden.
protected  void initGUI()
          Initalisiert die GUI.
 void resetCaptions(Map<String,Object> captionMap)
          Belegt die Labels und Buttons im Dialog neu
 void setFilterRule(String rule)
          Setzt die im Dialog eingegebene Formel und aktualisiert entsprechend die Vorschau
 
Methods inherited from class javax.swing.JDialog
addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.awt.Dialog
addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setModal, setModalityType, setResizable, setTitle, setUndecorated, setVisible, show, toBack
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DIALOG_TITLE

public static final String DIALOG_TITLE
Key, um den Titel des FeatureCollection-Filter-Dialogs in der CaptionsChangeable-Map anzusprechen.


OK_BUTTON

public static final String OK_BUTTON
Key, um den OK-Button des FeatureCollection-Filter-Dialogs in der CaptionsChangeable-Map anzusprechen.


CANCEL_BUTTON

public static final String CANCEL_BUTTON
Key, um den ABBRECHEN-Button des FeatureCollection-Filter-Dialogs in der CaptionsChangeable-Map anzusprechen.


APPLY_BUTTON

public static final String APPLY_BUTTON
Key, um den ÜBERNEHMEN-Button des FeatureCollection-Filter-Dialogs in der CaptionsChangeable-Map anzusprechen.


filterPanel

protected FeatureCollectionFilterPanel filterPanel
Panel in dem der Filter definiert und getestet werden kann.


okButton

protected JButton okButton
Der OK-Button.


cancelButton

protected JButton cancelButton
Der ABBRECHEN-Button.


applyButton

protected JButton applyButton
Der ANWENDEN-Button.

Constructor Detail

FeatureLayerFilterDialog

public FeatureLayerFilterDialog(Window parent,
                                JMapPane mapPane,
                                MapLayer mapLayer)
                         throws IOException
Erzeugt einen neuen Dialog.

Parameters:
parent - Uebergeordnetes Fenster (kann null sein)
mapPane - MapPane fuer welches FeatureSelectedEvent ausgeloest werden
mapLayer - MapLayer, aus dem die FeatureCollection stammt, auf der der Filter definiert wird
Throws:
IOException - falls beim Ermitteln der FeatureCollection aus dem Layer ein Fehler auftritt CHANGE BY SK: Takes Window instead of Frame

FeatureLayerFilterDialog

protected FeatureLayerFilterDialog(Window parent,
                                   JMapPane mapPane,
                                   MapLayer mapLayer,
                                   boolean initGUI)
                            throws IOException
Erzeugt einen neuen Dialog.

Parameters:
parent - Uebergeordnetes Fenster (kann null sein)
mapPane - MapPane fuer welches FeatureSelectedEvent ausgeloest werden
mapLayer - MapLayer, aus dem die FeatureCollection stammt, auf der der Filter definiert wird
initGUI - bestimmt, ob initGUI() aufgerufen werden soll. Wenn false, muss der Konstruktor der Unterklasse dafuer sorgen, dass initGUI() aufgerufen wird
Throws:
IOException - falls beim Ermitteln der FeatureCollection aus dem Layer ein Fehler auftritt CHANGE BY SK: Takes Window instead of Frame
Method Detail

initGUI

protected void initGUI()
                throws IOException
Initalisiert die GUI.

Throws:
IOException

acceptOperator

protected boolean acceptOperator(String operator)
Kann von Sub-Klassen ueberschrieben werden, um bestimmte Operatoren in der Auswahl-Liste auszublenden.

Parameters:
operator - ein Operator
Returns:
immer true

getMapPane

public JMapPane getMapPane()
Liefert das MapPane, fuer das FeatureSelectedEvents ausgeloest werden.


getMapLayer

public MapLayer getMapLayer()
Liefert das Layer, aus dem die FeatureCollection stammt auf der der Filter definiert wird.


getFeatureCollectionFilterPanel

public FeatureCollectionFilterPanel getFeatureCollectionFilterPanel()
Liefert das Panel, in dem der Filter definiert und die Vorschau angezeigt wird.


getFilterRule

public String getFilterRule()
Liefert die aktuell im Dialog eingegebene Formel.


setFilterRule

public void setFilterRule(String rule)
Setzt die im Dialog eingegebene Formel und aktualisiert entsprechend die Vorschau

Parameters:
rule - Formel als String

getFilter

public Filter getFilter()
Liefert den Filter der aktuell im Dialog eingegebenen Formel.


resetCaptions

public void resetCaptions(Map<String,Object> captionMap)
Belegt die Labels und Buttons im Dialog neu

Specified by:
resetCaptions in interface CaptionsChangeable
Parameters:
captionMap - Map in der die neuen Labels hinterlegt sind.
See Also:
FeatureLayerFilterDialog