de.bsvrz.pat.sysbed.plugins.api
Class DataIdentificationChoice

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by de.bsvrz.pat.sysbed.plugins.api.DataIdentificationChoice
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible

public class DataIdentificationChoice
extends JPanel

Diese Klasse dient zur Darstellung der Datenidentifikationsauswahl. Es können eine ausgewählte Attributgruppe, ein ausgewählter Aspekt und beliebig viele Objekte angezeigt werden. Außerdem gibt es einen "Ändern" - Button, welches einen Dialog öffnet, um seine Auswahl zu ändern.

Author:
Kappich Systemberatung
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
private  List<Aspect> _aspects
          speichert den ausgewählten Aspekt
private  JLabel _aspLabel
          speichert den Label "Aspekt"
private  JTextField _aspTextField
          zeigt den ausgewählten Aspekt an
private  JLabel _atgLabel
          speichert den Label "Attributgruppe"
private  JTextField _atgTextField
          zeigt die ausgewählte Attributgruppe an
private  List<AttributeGroup> _attributeGroups
          speichert die ausgewählte Attributgruppe
private  JButton _changeButton
          speichert den "Ändern..." - Button
private  ClientDavInterface _connection
          speichert die Verbindung zum Datenverteiler
private  GridBagLayout _gridBagLayout
          speichert das Layout des Panels
private  int _maximumSelectedObjects
          gibt an, wieviele Objekte beim PreselectionDialog maximal ausgewählt sein dürfen
private  int _minimumSelectedObjects
          gibt an, wieviele Objekte beim PreselectionDialog mindestens ausgewählt werden müssen
private  int _numberOfSelectedAspects
          merkt sich, wieviele Aspekte beim PreselectionDialog ausgewählt werden müssen
private  List<SystemObject> _objects
          speichert die ausgewählten Objekte
private  List<SystemObjectType> _objectTypes
          speichert die ausgewählten Objekttypen
private  JLabel _objLabel
          speichert den Label "Objekte"
private  JList _objList
          zeigt die ausgewählten Objekte an
private  PreselectionDialog _preselectionDialog
          speichert den Änderndialog
private  JLabel _simLabel
          speichert den Label "Simulationsvariante"
private  JTextField _simTextField
          zeigt die Simulationsvariante an
private  int _simulationVariant
          speichert die Simulationsvariante der Datenidentifikation
private  Collection _treeNodes
          speichert die Knoten im PreselectionTree
private  String _treePath
          speichert den zu selektierenden Pfad im PreselectionDialog
 
Fields inherited from class javax.swing.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 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
DataIdentificationChoice(PreselectionListsFilter listsFilter, List filterTypes)
          Dem Konstruktor können Filter für den Änderndialog übergeben werden.
DataIdentificationChoice(PreselectionListsFilter listsFilter, SystemObjectType filterType)
          Dem Konstruktor können Filter für den Änderndialog übergeben werden.
DataIdentificationChoice(PreselectionListsFilter listsFilter, SystemObjectType[] filterTypes)
          Dem Konstruktor können Filter für den Änderndialog übergeben werden.
 
Method Summary
private  void createAndShowGui()
          stellt das Datenidentifikationsauswahl-Panel zusammen
 Aspect getAspect()
          Gibt den ausgewählten Aspekt zurück.
 List<Aspect> getAspects()
          Methode, um die angezeigten Aspekte abzufragen.
 AttributeGroup getAttributeGroup()
          Gibt die ausgewählte Attributgruppe zurück.
 List<AttributeGroup> getAttributeGroups()
          Methode, um die angezeigten Attributgruppen abzufragen.
 SystemObject getObject()
          Gibt das oberste Systemobjekt zurück.
 List<SystemObject> getObjects()
          Methode, um die angezeigten Objekte zurückzugeben.
 List<SystemObjectType> getObjectTypes()
          Fragt die ausgewählten Objekttypen ab.
 int getSimulationVariant()
          Gibt die Simulationsvariante zurück.
 String getTreePath()
          Gibt den selektierten Pfad des Baumes zurück, der evtl.
private  GridBagConstraints makegbc(int x, int y, int width, int height)
          Hilfsmethode für das GridBagLayout zur Positionierung der Elemente.
private  void setAspects(List<Aspect> aspects)
          Methode, um die ausgewählten Aspekte zu übergeben.
private  void setAttributeGroups(List<AttributeGroup> attributeGroups)
          Methode, um die ausgewählten Attributgruppen zu übergeben.
 void setDataIdentification(List<SystemObjectType> objectTypes, AttributeGroup attributeGroup, Aspect aspect, List<SystemObject> objects, int simulationVariant)
          Die Datenidentifikation kann hiermit übergeben werden.
 void setDataIdentification(List<SystemObjectType> objectTypes, List<AttributeGroup> attributeGroups, List<Aspect> aspects, List<SystemObject> objects, int simulationVariant)
          Die vollständige Datenidentifikation, bestehend aus Objekttypen, Attributgruppe, Aspekt und Objekte können übergeben werden.
 void setMaximumSelectedObjects(int max)
          Gibt an, wieviele Objekte maximal im PreselectionDialog ausgewählt sein dürfen.
 void setMinimumSelectedObjects(int min)
          Gibt an, wieviele Objekte mindestens im PreselectionDialog ausgewählt sein müssen.
 void setNumberOfSelectedObjects(int minimum, int maximum)
          Gibt an, wieviele Objekte minimal und maximal im PreselectionDialog ausgewählt werden müssen / dürfen.
private  void setObjects(List<SystemObject> objects)
          Methode, um die ausgewählten Objekte zu übergeben.
private  void setObjectTypes(List<SystemObjectType> objectTypes)
          Übergibt die Objekttypen an die Datenauswahl.
private  void setSimulationVariant(int simulationVariant)
          Setzt die Simulationsvariante.
 void showTree(Collection treeNodes, ClientDavInterface connection, String treePath)
           
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, 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, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, 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
 
Methods inherited from class java.awt.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 java.awt.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 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

_atgLabel

private final JLabel _atgLabel
speichert den Label "Attributgruppe"


_aspLabel

private final JLabel _aspLabel
speichert den Label "Aspekt"


_simLabel

private final JLabel _simLabel
speichert den Label "Simulationsvariante"


_objLabel

private final JLabel _objLabel
speichert den Label "Objekte"


_atgTextField

private final JTextField _atgTextField
zeigt die ausgewählte Attributgruppe an


_aspTextField

private final JTextField _aspTextField
zeigt den ausgewählten Aspekt an


_simTextField

private JTextField _simTextField
zeigt die Simulationsvariante an


_objList

private final JList _objList
zeigt die ausgewählten Objekte an


_changeButton

private final JButton _changeButton
speichert den "Ändern..." - Button


_objectTypes

private List<SystemObjectType> _objectTypes
speichert die ausgewählten Objekttypen


_attributeGroups

private final List<AttributeGroup> _attributeGroups
speichert die ausgewählte Attributgruppe


_aspects

private final List<Aspect> _aspects
speichert den ausgewählten Aspekt


_objects

private final List<SystemObject> _objects
speichert die ausgewählten Objekte


_preselectionDialog

private PreselectionDialog _preselectionDialog
speichert den Änderndialog


_gridBagLayout

private final GridBagLayout _gridBagLayout
speichert das Layout des Panels


_numberOfSelectedAspects

private int _numberOfSelectedAspects
merkt sich, wieviele Aspekte beim PreselectionDialog ausgewählt werden müssen


_minimumSelectedObjects

private int _minimumSelectedObjects
gibt an, wieviele Objekte beim PreselectionDialog mindestens ausgewählt werden müssen


_maximumSelectedObjects

private int _maximumSelectedObjects
gibt an, wieviele Objekte beim PreselectionDialog maximal ausgewählt sein dürfen


_treeNodes

private Collection _treeNodes
speichert die Knoten im PreselectionTree


_connection

private ClientDavInterface _connection
speichert die Verbindung zum Datenverteiler


_treePath

private String _treePath
speichert den zu selektierenden Pfad im PreselectionDialog


_simulationVariant

private int _simulationVariant
speichert die Simulationsvariante der Datenidentifikation

Constructor Detail

DataIdentificationChoice

public DataIdentificationChoice(PreselectionListsFilter listsFilter,
                                SystemObjectType filterType)
Dem Konstruktor können Filter für den Änderndialog übergeben werden.

Parameters:
listsFilter - ein Objekt, welches die Listen des Änderndialogs filtert
filterType - Typ der Objekte, die zur Auswahl angeboten werden sollen

DataIdentificationChoice

public DataIdentificationChoice(PreselectionListsFilter listsFilter,
                                SystemObjectType[] filterTypes)
Dem Konstruktor können Filter für den Änderndialog übergeben werden.

Parameters:
listsFilter - ein Objekt, welches die Listen des Änderndialogs filtert
filterTypes - Typen der Objekte, die zur Auswahl angeboten werden sollen

DataIdentificationChoice

public DataIdentificationChoice(PreselectionListsFilter listsFilter,
                                List filterTypes)
Dem Konstruktor können Filter für den Änderndialog übergeben werden.

Parameters:
listsFilter - ein Objekt, welches die Listen des Änderndialogs filtert
filterTypes - Typen der Objekte, die zur Auswahl angeboten werden sollen
Method Detail

createAndShowGui

private void createAndShowGui()
stellt das Datenidentifikationsauswahl-Panel zusammen


setObjectTypes

private void setObjectTypes(List<SystemObjectType> objectTypes)
Übergibt die Objekttypen an die Datenauswahl. Sie werden benötigt, damit eine Vorauswahl beim "Änder"-Button getroffen wird.

Parameters:
objectTypes - die vorauszuwählenden Objekttypen

getObjectTypes

public List<SystemObjectType> getObjectTypes()
Fragt die ausgewählten Objekttypen ab.

Returns:
Liste der Objekttypen

getSimulationVariant

public int getSimulationVariant()
Gibt die Simulationsvariante zurück.

Returns:
die Simulationsvariante

setAttributeGroups

private void setAttributeGroups(List<AttributeGroup> attributeGroups)
Methode, um die ausgewählten Attributgruppen zu übergeben.

Parameters:
attributeGroups - ausgewählte Attributgruppen

getAttributeGroups

public List<AttributeGroup> getAttributeGroups()
Methode, um die angezeigten Attributgruppen abzufragen.

Returns:
die angezeigten Attributgruppen

getAttributeGroup

public AttributeGroup getAttributeGroup()
Gibt die ausgewählte Attributgruppe zurück.

Returns:
die ausgewählte Attributgruppe

setAspects

private void setAspects(List<Aspect> aspects)
Methode, um die ausgewählten Aspekte zu übergeben.

Parameters:
aspects - die ausgewählten Aspekte

getAspects

public List<Aspect> getAspects()
Methode, um die angezeigten Aspekte abzufragen.

Returns:
die angezeigten Aspekte

getAspect

public Aspect getAspect()
Gibt den ausgewählten Aspekt zurück.

Returns:
den ausgewählten Aspekt

setObjects

private void setObjects(List<SystemObject> objects)
Methode, um die ausgewählten Objekte zu übergeben.

Parameters:
objects - die ausgewählten Objekte

getObjects

public List<SystemObject> getObjects()
Methode, um die angezeigten Objekte zurückzugeben.

Returns:
die angezeigten Objekte

getObject

public SystemObject getObject()
Gibt das oberste Systemobjekt zurück.

Returns:
das oberste Systemobjekt

setDataIdentification

public void setDataIdentification(List<SystemObjectType> objectTypes,
                                  List<AttributeGroup> attributeGroups,
                                  List<Aspect> aspects,
                                  List<SystemObject> objects,
                                  int simulationVariant)
Die vollständige Datenidentifikation, bestehend aus Objekttypen, Attributgruppe, Aspekt und Objekte können übergeben werden.

Parameters:
objectTypes - die ausgewählten Objekttypen
attributeGroups - die ausgewählten Attributgruppen
aspects - die ausgewählten Aspekte
objects - die ausgewählten Objekte
simulationVariant - die Simulationsvariante

setDataIdentification

public void setDataIdentification(List<SystemObjectType> objectTypes,
                                  AttributeGroup attributeGroup,
                                  Aspect aspect,
                                  List<SystemObject> objects,
                                  int simulationVariant)
Die Datenidentifikation kann hiermit übergeben werden.

Parameters:
objectTypes - die Objekttypen
attributeGroup - die Attributgruppe
aspect - der Aspekt
objects - die Objekte
simulationVariant - die Simulationsvariante

setSimulationVariant

private void setSimulationVariant(int simulationVariant)
Setzt die Simulationsvariante. Ist die Simulationsvariante "-1", wird sie nicht angezeigt.

Parameters:
simulationVariant - die Simulationsvariante

setMinimumSelectedObjects

public void setMinimumSelectedObjects(int min)
Gibt an, wieviele Objekte mindestens im PreselectionDialog ausgewählt sein müssen.

Parameters:
min - Anzahl der Objekte, die mindestens ausgewählt sein müssen

setMaximumSelectedObjects

public void setMaximumSelectedObjects(int max)
Gibt an, wieviele Objekte maximal im PreselectionDialog ausgewählt sein dürfen.

Parameters:
max - Anzahl der Objekte, die maximal ausgewählt sein dürfen

setNumberOfSelectedObjects

public void setNumberOfSelectedObjects(int minimum,
                                       int maximum)
Gibt an, wieviele Objekte minimal und maximal im PreselectionDialog ausgewählt werden müssen / dürfen.

Parameters:
minimum - Anzahl der Objekte, die minimal ausgewählt sein müssen
maximum - Anzahl der Objekte, die maximal ausgewählt sein dürfen

showTree

public void showTree(Collection treeNodes,
                     ClientDavInterface connection,
                     String treePath)
Parameters:
treeNodes - Gibt an, welche Knoten im Baum dargestellt werden sollen. Knoten vom Typ SystemObject oder TreeNodeObject.
connection - Verbindung zum Datenverteiler
treePath - optional - gibt an, welcher Pfad im Baum vorausgewählt sein soll, sonst null falls kein Pfad ausgewählt werden soll

getTreePath

public String getTreePath()
Gibt den selektierten Pfad des Baumes zurück, der evtl. durch den PreselectionDialog geändert wurde.

Returns:
den selektierten Pfad des Baumes

makegbc

private GridBagConstraints makegbc(int x,
                                   int y,
                                   int width,
                                   int height)
Hilfsmethode für das GridBagLayout zur Positionierung der Elemente.

Parameters:
x - die x-Position im Grid
y - die y-Position im Grid
width - gibt die Anzahl der Spalten an, die die Komponente nutzen soll
height - gibt die Anzahl der Zeilen an, die die Komponente nutzen soll
Returns:
die Rahmenbedingungen für eine Komponente