de.bsvrz.pat.sysbed.dataview
Class HeaderGrid

java.lang.Object
  extended by de.bsvrz.pat.sysbed.dataview.HeaderGrid

public class HeaderGrid
extends Object

Die Klasse HeaderGrid dient zur Darstellung einer hierarchischen Struktur (z.B. Baum). Die Darstellung kann dazu verwendet werden, einen verschachtelten Tabellenkopf einer Tabelle zu erstellen. Ein Objekt dieser Klasse besteht aus einem Vater-Element und beliebig vielen Nachfolgern. Bei der Darstellung werden die Nachfolger mittels eines Schiebereglers voneinander getrennt.

Author:
Kappich Systemberatung

Nested Class Summary
 class HeaderGrid.HeaderElement
          Diese Klasse repräsentiert eine Zelle des hierarchischen Spaltenheaders.
 
Constructor Summary
HeaderGrid(HeaderGrid parent, Object node, DataViewPanel dataViewPanel)
          Es wird ein Objekt der Klasse HeaderGrid erzeugt.
 
Method Summary
 void addHeaderSuccessor(HeaderGrid headerGrid)
          Fügt einen Nachfolger hinzu.
 void addRowListener(RowListener rowListener)
          Objekte, die sich hier anmelden, werden benachrichtigt, sobald im Spaltenheader ein Schieberegler bewegt wird.
 JPanel createHeader()
          Erstellt ein Panel aus den im Objekt gesammelten Daten.
 HeaderGrid.HeaderElement getHeaderElement()
          Gibt das Vater-Element zurück.
 List<HeaderGrid> getHeaderSuccessors()
          Gibt die Nachfolger des Grids zurück.
 int getNumberOfColumns()
          Gibt die Anzahl der Spalten zurück, die sich unterhalb dieses Grids befinden.
 int getOptimalColumnWidth()
          Liefert die optimale Spaltenbreite, so dass alle Einträge zu sehen sind.
 de.bsvrz.pat.sysbed.dataview.HeaderGrid.Splitter getSplitter()
          Gibt den Schieberegler zurück.
 void removeRowListener(RowListener rowListener)
          Objekt, welches beim Listener wieder abgemeldet werden soll.
 void setNumberOfColumns(int numberOfColumns)
          Setzt die Anzahl der Spalten, die sich unterhalb dieses Grids befinden.
 void setRowWidth(int width)
          An alle angemeldeten Objekte wird die neue Breite der veränderten Spalte übergeben.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HeaderGrid

public HeaderGrid(HeaderGrid parent,
                  Object node,
                  DataViewPanel dataViewPanel)
Es wird ein Objekt der Klasse HeaderGrid erzeugt.

Parameters:
parent - Vater-Knoten, dieses Knotens
node - eine Attributgruppe oder ein Attribut
dataViewPanel - Komponente, in der die Datensätze dargestellt werden
Method Detail

addRowListener

public void addRowListener(RowListener rowListener)
Objekte, die sich hier anmelden, werden benachrichtigt, sobald im Spaltenheader ein Schieberegler bewegt wird.

Parameters:
rowListener - anzumeldendes Objekt

removeRowListener

public void removeRowListener(RowListener rowListener)
Objekt, welches beim Listener wieder abgemeldet werden soll.

Parameters:
rowListener - abzumeldendes Objekt

setRowWidth

public void setRowWidth(int width)
An alle angemeldeten Objekte wird die neue Breite der veränderten Spalte übergeben.

Parameters:
width - neue Spaltenbreite

getOptimalColumnWidth

public int getOptimalColumnWidth()
Liefert die optimale Spaltenbreite, so dass alle Einträge zu sehen sind.

Returns:
optimale Spaltenbreite

addHeaderSuccessor

public void addHeaderSuccessor(HeaderGrid headerGrid)
Fügt einen Nachfolger hinzu.

Parameters:
headerGrid - ein Nachfolger

getHeaderSuccessors

public List<HeaderGrid> getHeaderSuccessors()
Gibt die Nachfolger des Grids zurück.

Returns:
die Nachfolger

getHeaderElement

public HeaderGrid.HeaderElement getHeaderElement()
Gibt das Vater-Element zurück.

Returns:
Vater-Element

getSplitter

public de.bsvrz.pat.sysbed.dataview.HeaderGrid.Splitter getSplitter()
Gibt den Schieberegler zurück.

Returns:
Schieberegler

getNumberOfColumns

public int getNumberOfColumns()
Gibt die Anzahl der Spalten zurück, die sich unterhalb dieses Grids befinden.

Returns:
Anzahl der Spalten

setNumberOfColumns

public void setNumberOfColumns(int numberOfColumns)
Setzt die Anzahl der Spalten, die sich unterhalb dieses Grids befinden.

Parameters:
numberOfColumns - Anzahl der Spalten

createHeader

public JPanel createHeader()
Erstellt ein Panel aus den im Objekt gesammelten Daten. Dieses Objekt besteht aus einem Element und seinen Nachfolgern. Wird für den Aufbau eines hierarchischen Tabellenkopfes genutzt.

Returns:
das Panel des Objekts