de.willuhn.jameica.gui.parts
Class TreePart

java.lang.Object
  extended by de.willuhn.jameica.gui.parts.AbstractTablePart
      extended by de.willuhn.jameica.gui.parts.TreePart
All Implemented Interfaces:
Part
Direct Known Subclasses:
SearchResultPart

public class TreePart
extends AbstractTablePart

Erzeugt einen Baum. Dabei werden alle Kind-Objekte rekursiv dargestellt.

Author:
willuhn

Field Summary
 
Fields inherited from class de.willuhn.jameica.gui.parts.AbstractTablePart
changeable, checkable, columns, menu, multi, rememberColWidth, rememberOrder, rememberState, selectionListeners, settings
 
Constructor Summary
TreePart(de.willuhn.datasource.GenericIterator list, Action action)
          Erzeugt einen neuen Tree basierend auf der uebergebenen Liste von Objekten des Typs GenericObjectNode.
TreePart(de.willuhn.datasource.GenericObjectNode object, Action action)
          Erzeugt einen neuen Tree basierend auf dem uebergebenen Objekt.
 
Method Summary
 java.util.List getItems()
          Liefert nur die Liste der Elemente der obersten Hirachie-Ebene.
 java.lang.Object getSelection()
          Liefert die markierten Objekte.
 void paint(org.eclipse.swt.widgets.Composite parent)
          Malt die Komponente in das angegebene Composite.
 void removeAll()
          Entfernt alle Elemente aus der Tabelle.
 void setChecked(java.lang.Object[] objects, boolean checked)
          Wenn die Tabelle mit Checkboxen versehen ist, kann man damit bei einem Element das Haeckchen setzen oder entfernen.
 void setExpanded(boolean expanded)
          Legt fest, ob der Baum per Default komplett geoeffnet oder geschlossen sein soll.
 void setExpanded(de.willuhn.datasource.GenericObject object, boolean expanded)
          Klappt das Element auf oder zu.
 void setExpanded(de.willuhn.datasource.GenericObject object, boolean expanded, boolean recursive)
          Klappt das Element auf oder zu.
 void setFormatter(TreeFormatter formatter)
          Definiert einen optionalen Formatierer, mit dem man SWT-maessig ganze Zeilen formatieren kann.
 void setList(de.willuhn.datasource.GenericIterator list)
          Speichert die Liste der anzuzeigenden Daten.
 void setRootObject(de.willuhn.datasource.GenericObjectNode node)
          Alternativ zu setList: Speichert das Root-Element.
 
Methods inherited from class de.willuhn.jameica.gui.parts.AbstractTablePart
addColumn, addColumn, addColumn, addColumn, addColumn, addSelectionListener, setCheckable, setChecked, setContextMenu, setMulti, setRememberColWidths, setRememberOrder, setRememberState
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TreePart

public TreePart(de.willuhn.datasource.GenericObjectNode object,
                Action action)
Erzeugt einen neuen Tree basierend auf dem uebergebenen Objekt.

Parameters:
object - Das Objekt, fuer das der Baum erzeugt werden soll.
action - Action, die bei der Auswahl eines Elements ausgeloest werden soll.

TreePart

public TreePart(de.willuhn.datasource.GenericIterator list,
                Action action)
Erzeugt einen neuen Tree basierend auf der uebergebenen Liste von Objekten des Typs GenericObjectNode. Enthaelt der Iterator Objekte, die nicht von GenericObjectNode abgeleitet sind, wird er eine ClassCastException werfen.

Parameters:
list - Liste mit Objekten, fuer die der Baum erzeugt werden soll.
action - Action, die bei der Auswahl eines Elements ausgeloest werden soll.
Method Detail

setList

public void setList(de.willuhn.datasource.GenericIterator list)
Speichert die Liste der anzuzeigenden Daten.

Parameters:
list - Liste der anzuzeigenden Daten.

setRootObject

public void setRootObject(de.willuhn.datasource.GenericObjectNode node)
Alternativ zu setList: Speichert das Root-Element.

Parameters:
node - das Root-Element.

setFormatter

public void setFormatter(TreeFormatter formatter)
Definiert einen optionalen Formatierer, mit dem man SWT-maessig ganze Zeilen formatieren kann.

Parameters:
formatter - Formatter.

setExpanded

public void setExpanded(boolean expanded)
Legt fest, ob der Baum per Default komplett geoeffnet oder geschlossen sein soll. Standard: Alle geoeffnet.

Parameters:
expanded -

paint

public void paint(org.eclipse.swt.widgets.Composite parent)
           throws java.rmi.RemoteException
Description copied from interface: Part
Malt die Komponente in das angegebene Composite.

Parameters:
parent - das Composite.
Throws:
java.rmi.RemoteException
See Also:
Part.paint(org.eclipse.swt.widgets.Composite)

setExpanded

public void setExpanded(de.willuhn.datasource.GenericObject object,
                        boolean expanded)
Klappt das Element auf oder zu.

Parameters:
object - das Objekt.
expanded - true, wenn es aufgeklappt sein soll, sonst false.

setExpanded

public void setExpanded(de.willuhn.datasource.GenericObject object,
                        boolean expanded,
                        boolean recursive)
Klappt das Element auf oder zu.

Parameters:
object - das Objekt.
expanded - true, wenn es aufgeklappt sein soll, sonst false.
recursive - true, wenn auch alle Kinder aufgeklappt werden sollen.

getSelection

public java.lang.Object getSelection()
Description copied from class: AbstractTablePart
Liefert die markierten Objekte. Die Funktion liefert je nach Markierung Object oder Object[].

Specified by:
getSelection in class AbstractTablePart
Returns:
das/die markierten Objekte.
See Also:
AbstractTablePart.getSelection()

getItems

public java.util.List getItems()
                        throws java.rmi.RemoteException
Liefert nur die Liste der Elemente der obersten Hirachie-Ebene. Wenn es sich um Objekte des Typs GenericObjectNode handelt, kann man sich die Kinder dann dort mit getChildren holen. Falls der Tree mit Checkboxen versehen ist, wird eine Liste aller selektierten Items zurueckgeliefert - diese enthaelt auch Kind-Objekte, insofern deren Checkbox aktiviert ist.

Specified by:
getItems in class AbstractTablePart
Returns:
Liste der Fachobjekte.
Throws:
java.rmi.RemoteException
See Also:
AbstractTablePart.getItems()

setChecked

public void setChecked(java.lang.Object[] objects,
                       boolean checked)
Description copied from class: AbstractTablePart
Wenn die Tabelle mit Checkboxen versehen ist, kann man damit bei einem Element das Haeckchen setzen oder entfernen. Hinweis: Dies hier ist eine leere Dummy-Implementierung. Sie muss von abgeleiteten Klassen ueberschrieben werden.

Overrides:
setChecked in class AbstractTablePart
Parameters:
objects - Liste der zu checkenden Objekte.
checked - true, wenn das Haekchen gesetzt werden soll.
See Also:
AbstractTablePart.setChecked(java.lang.Object[], boolean)

removeAll

public void removeAll()
Description copied from class: AbstractTablePart
Entfernt alle Elemente aus der Tabelle.

Specified by:
removeAll in class AbstractTablePart
See Also:
AbstractTablePart.removeAll()