Class TablePart

All Implemented Interfaces:
Part
Direct Known Subclasses:
AttachmentListPart, BackupVersionsList, CertificateList, LogList, RepositoryList

public class TablePart extends AbstractTablePart
Erzeugt eine Standard-Tabelle.
Author:
willuhn
  • Field Details

  • Constructor Details

    • TablePart

      public TablePart(Action action)
      Erzeugt eine neue leere Standard-Tabelle auf dem uebergebenen Composite.
      Parameters:
      action - die beim Doppelklick auf ein Element ausgefuehrt wird.
    • TablePart

      public TablePart(de.willuhn.datasource.GenericIterator list, Action action)
      Erzeugt eine neue Standard-Tabelle auf dem uebergebenen Composite.
      Parameters:
      list - Liste mit Objekten, die angezeigt werden soll.
      action - die beim Doppelklick auf ein Element ausgefuehrt wird.
    • TablePart

      public TablePart(List list, Action action)
      Erzeugt eine neue Standard-Tabelle auf dem uebergebenen Composite.
      Parameters:
      list - Liste mit Objekten, die angezeigt werden soll.
      action - die beim Doppelklick auf ein Element ausgefuehrt wird.
  • Method Details

    • setFormatter

      public void setFormatter(TableFormatter formatter)
      Definiert einen optionalen Formatierer, mit dem man SWT-maessig ganze Zeilen formatieren kann.
      Parameters:
      formatter - Formatter.
    • addChangeListener

      public void addChangeListener(TableChangeListener l)
      fuegt der Tabelle einen Listener hinzu, der ausgeloest wird, wenn ein Feld aenderbar ist und vom Benutzer geaendert wurde.
      Parameters:
      l - der Listener.
    • setSummary

      @Deprecated public void setSummary(boolean show)
      Deprecated.
      Bitte stattdessen AbstractTablePart.addFeature(Feature) verwenden.
      Legt fest, ob eine Summenzeile am Ende angezeigt werden soll.
      Parameters:
      show - true, wenn die Summenzeile angezeigt werden soll (Default) oder false wenn sie nicht angezeigt werden soll.
    • getItems

      public List getItems() throws RemoteException
      Description copied from class: AbstractTablePart
      Liefert die Fach-Objekte der Tabelle.
      Specified by:
      getItems in class AbstractTablePart
      Returns:
      Liste der Fachobjekte.
      Throws:
      RemoteException
    • getItems

      public List getItems(boolean onlyChecked) throws RemoteException
      Liefert die Fach-Objekte der Tabelle.
      Parameters:
      onlyChecked - true, falls bei Aktivierung des Features setCheckable(true) nur genau die Objekte geliefert werden sollen, bei denen das Haekchen gesetzt ist. Die Objekte werden genau in der angezeigten Reihenfolge zurueckgeliefert.
      Returns:
      die Liste der Objekte.
      Throws:
      RemoteException
    • setTopIndex

      public void setTopIndex(int i)
      Legt fest, bis zu welchem Element gescrollt werden soll.
      Parameters:
      i - Index des Elementes, welches nach dem Scrollen als erstes angezeigt werden soll.
    • removeAll

      public void removeAll()
      Description copied from class: AbstractTablePart
      Entfernt alle Elemente aus der Tabelle.
      Specified by:
      removeAll in class AbstractTablePart
    • removeItem

      public int removeItem(Object item)
      Entfernt das genannte Element aus der Tabelle.

      Wurde die Tabelle mit einer Liste von Objekten erzeugt, die von DBObject abgeleitet sind, muss das Loeschen nicht manuell vorgenommen werden. Die Tabelle fuegt in diesem Fall automatisch jedem Objekt einen Listener hinzu, der beim Loeschen des Objektes benachrichtigt wird. Die Tabelle entfernt das Element dann selbstaendig.

      Parameters:
      item - zu entfernendes Element.
      Returns:
      die Position des entfernten Objektes oder -1 wenn es nicht gefunden wurde.
    • addItem

      public void addItem(Object object) throws RemoteException
      Fuegt der Tabelle am Ende ein Element hinzu.
      Parameters:
      object - hinzuzufuegendes Element.
      Throws:
      RemoteException
    • addItem

      public void addItem(Object object, boolean checked) throws RemoteException
      Fuegt der Tabelle am Ende ein Element hinzu.
      Parameters:
      object - hinzuzufuegendes Element.
      checked - true, wenn die Tabelle checkable ist und das Objekt gecheckt sein soll.
      Throws:
      RemoteException
    • addItem

      public void addItem(Object object, int index) throws RemoteException
      Fuegt der Tabelle ein Element hinzu.
      Parameters:
      object - hinzuzufuegendes Element.
      index - Position, an der es eingefuegt werden soll.
      Throws:
      RemoteException
    • updateItem

      public void updateItem(Object oldVersion, Object newVersion) throws RemoteException
      Aktualisiert ein einzelnes Objekt in der Tabelle.
      Parameters:
      oldVersion - das alte Objekt.
      newVersion - das neue Objekt, welches den Platz des vorherigen einnehmen soll.
      Throws:
      RemoteException
    • addItem

      public void addItem(Object object, int index, boolean checked) throws RemoteException
      Fuegt der Tabelle ein Element hinzu.
      Parameters:
      object - hinzuzufuegendes Element.
      index - Position, an der es eingefuegt werden soll.
      checked - true, wenn die Tabelle checkable ist und das Objekt gecheckt sein soll.
      Throws:
      RemoteException
    • size

      public int size()
      Description copied from class: AbstractTablePart
      Liefert die Anzahl der Elemente in dieser Tabelle.
      Specified by:
      size in class AbstractTablePart
      Returns:
      Anzahl der Elemente.
    • paint

      public void paint(org.eclipse.swt.widgets.Composite parent) throws RemoteException
      Description copied from interface: Part
      Malt die Komponente in das angegebene Composite.
      Parameters:
      parent - das Composite.
      Throws:
      RemoteException
    • select

      public void select(Object[] objects)
      Description copied from class: AbstractTablePart
      Markiert die Liste der uebergebenen Objekte.
      Specified by:
      select in class AbstractTablePart
      Parameters:
      objects - Liste der zu markierenden Objekte.
    • setChecked

      public void setChecked(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.
    • getSelection

      public 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.
    • refreshSummary

      @Deprecated protected void refreshSummary()
      Deprecated.
      Aktualisiert die Summenzeile.
    • getSummary

      @Deprecated protected String getSummary()
      Deprecated.
      Bitte kuenftig stattdessen AbstractTablePart.createFeatureEventContext(de.willuhn.jameica.gui.parts.table.Feature.Event, Object) ueberschreiben und dort die addon-Daten passend fuer FeatureSummary belegen:
      
       protected Context createFeatureEventContext(Feature.Event e, Object data)
       {
         Context ctx = super.createFeatureEventContext(e, data);
         if (this.hasEvent(FeatureSummary.class,e))
           ctx.addon.put(FeatureSummary.CTX_KEY_TEXT,"Anzuzeigender Summentext");
         return ctx;
       }
       
      Liefert den anzuzeigenden Summen-Text. Kann von abgeleiteten Klassen ueberschrieben werde, um etwas anderes anzuzeigen.
      Returns:
      anzuzeigender Text oder null, wenn nichts angezeigt werden soll.
    • orderBy

      protected void orderBy(String colName)
      Gibt an, nach welcher Spalte sortiert werden soll.
      Parameters:
      colName - Name der Spalte
    • sort

      public void sort()
      Sortiert die Datensaetze in der Tabelle anhand der aktuellen Spalte neu.
    • restoreState

      public void restoreState()
      Description copied from class: AbstractTablePart
      Stellt den Zustand wieder her (markierte Objekte und Scroll-Position). Geschieht jedoch nur, wenn das Feature mit setRememberState(true) aktiviert wurde. Das ist eine Dummy-Implementierung, die in den abgeleiteten Klassen ueberschrieben werden kann.
      Overrides:
      restoreState in class AbstractTablePart
    • setEnabled

      public void setEnabled(boolean enabled)
      Aktiviert oder deaktiviert die Tabelle.
      Parameters:
      enabled - true, wenn sie aktiv sein soll.
    • isEnabled

      public boolean isEnabled()
      Prueft, ob die Tabelle aktiv ist.
      Returns:
      true, wenn sie aktiv ist.
    • getCollator

      protected Collator getCollator()
      Liefert den Collator fuer die Sortierung.
      Returns:
      der Collator fuer die Sortierung.
    • orderBy

      protected void orderBy(int index)
      Sortiert die Tabelle nach der angegebenen Spaltennummer.
      Parameters:
      index - Spaltennummer.
    • getEditorControl

      protected org.eclipse.swt.widgets.Control getEditorControl(int row, org.eclipse.swt.widgets.TableItem item, String oldValue)
      Liefert das Editor-Control.
      Parameters:
      row - die Spalte.
      item - das Tabellen-Element.
      oldValue - der bisherige Wert.
      Returns:
      der Editor oder null, wenn das Bearbeiten nicht erlaubt werden soll.
    • getControlValue

      protected String getControlValue(org.eclipse.swt.widgets.Control control)
      Liefert den eingegebenen Wert im Editor.
      Parameters:
      control - das Control des Editors.
      Returns:
      der eingegebene Wert.
    • createFeatureEventContext

      protected Feature.Context createFeatureEventContext(Feature.Event e, Object data)
      Description copied from class: AbstractTablePart
      Erzeugt den Context fuer das Feature-Event. Kann von abgeleiteten Klassen ueberschrieben werden, um weitere Informationen zum Context hinzuzufuegen.
      Overrides:
      createFeatureEventContext in class AbstractTablePart
      Parameters:
      e - das Event.
      data - optionale Angabe des Objektes, auf das sich das Event bezieht.
      Returns:
      der Feature-Context.