Class PropertyTreeModel

  • All Implemented Interfaces:
    javax.swing.tree.TreeModel

    public class PropertyTreeModel
    extends java.lang.Object
    implements javax.swing.tree.TreeModel
    Ein TreeModel, welches die Eigenschaften eines Objektes (oder ggf. mehrerer Objekte) anzeigt. Die angezeigten Eigenschaften eines Objekts werden durch die PropertyName- und PropertyClass-Annotations festgelegt.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.Object MULTIPLE
      Spezielles Objekt, dass den Wert "<Unterschiedlich>" symbolisiert, also bei mehreren gleichzeitig ausgewählten Objekten anzeigt, dass diese sich in der betreffenden Eigenschaft unterscheiden.
    • Constructor Summary

      Constructors 
      Constructor Description
      PropertyTreeModel​(java.util.List<?> o)
      Erstellt ein neues PropertyTreeModel.
      PropertyTreeModel​(java.util.List<?> o, boolean showCommonProperties)
      Erstellt ein neues PropertyTreeModel.
    • Method Summary

      Modifier and Type Method Description
      void addTreeModelListener​(javax.swing.event.TreeModelListener l)  
      java.lang.Object getChild​(java.lang.Object parent, int index)  
      int getChildCount​(java.lang.Object parent)  
      int getIndexOfChild​(java.lang.Object parent, java.lang.Object child)  
      java.lang.Object getRoot()  
      boolean isLeaf​(java.lang.Object node)  
      void removeTreeModelListener​(javax.swing.event.TreeModelListener l)  
      void setCollectionIcon​(javax.swing.Icon icon)
      Setzt das Symbol für Collection-Nodes
      void setGroupIcon​(javax.swing.Icon icon)
      Setzt das Symbol für Kategorie-Nodes
      void setMultiIcon​(javax.swing.Icon icon)
      Setzt das Symbol für Gemeinsame-Eigenschaften-Nodes
      void setObjectIcon​(javax.swing.Icon icon)
      Setzt das Symbol für Objekt-Nodes
      void setPropertyIcon​(javax.swing.Icon icon)
      Setzt das Symbol für Eigenschaften-Nodes
      void valueForPathChanged​(javax.swing.tree.TreePath path, java.lang.Object newValue)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • MULTIPLE

        public static final java.lang.Object MULTIPLE
        Spezielles Objekt, dass den Wert "<Unterschiedlich>" symbolisiert, also bei mehreren gleichzeitig ausgewählten Objekten anzeigt, dass diese sich in der betreffenden Eigenschaft unterscheiden.
    • Constructor Detail

      • PropertyTreeModel

        public PropertyTreeModel​(java.util.List<?> o)
        Erstellt ein neues PropertyTreeModel. Sollen keine gemeinsamen Eigenschaften mehrerer Objekte angezeigt werden kann in der Regel eine Liste mit einem Element (dem anzuzeigenden Objekt) übergeben werden.
        Parameters:
        o - Liste mit anzuzeigenden Objekten
      • PropertyTreeModel

        public PropertyTreeModel​(java.util.List<?> o,
                                 boolean showCommonProperties)
        Erstellt ein neues PropertyTreeModel. Sollen keine gemeinsamen Eigenschaften mehrerer Objekte angezeigt werden kann in der Regel eine Liste mit einem Element (dem anzuzeigenden Objekt) übergeben werden.
        Parameters:
        o - Liste mit anzuzeigenden Objekten
        showCommonProperties - Sollen bei mehreren Objekten die gemeinsamen/Unterschiedlichen Eigenschaften separat angezeigt werden?
    • Method Detail

      • getRoot

        public java.lang.Object getRoot()
        Specified by:
        getRoot in interface javax.swing.tree.TreeModel
      • getChild

        public java.lang.Object getChild​(java.lang.Object parent,
                                         int index)
        Specified by:
        getChild in interface javax.swing.tree.TreeModel
      • getChildCount

        public int getChildCount​(java.lang.Object parent)
        Specified by:
        getChildCount in interface javax.swing.tree.TreeModel
      • isLeaf

        public boolean isLeaf​(java.lang.Object node)
        Specified by:
        isLeaf in interface javax.swing.tree.TreeModel
      • valueForPathChanged

        public void valueForPathChanged​(javax.swing.tree.TreePath path,
                                        java.lang.Object newValue)
        Specified by:
        valueForPathChanged in interface javax.swing.tree.TreeModel
      • getIndexOfChild

        public int getIndexOfChild​(java.lang.Object parent,
                                   java.lang.Object child)
        Specified by:
        getIndexOfChild in interface javax.swing.tree.TreeModel
      • addTreeModelListener

        public void addTreeModelListener​(javax.swing.event.TreeModelListener l)
        Specified by:
        addTreeModelListener in interface javax.swing.tree.TreeModel
      • removeTreeModelListener

        public void removeTreeModelListener​(javax.swing.event.TreeModelListener l)
        Specified by:
        removeTreeModelListener in interface javax.swing.tree.TreeModel
      • setMultiIcon

        public void setMultiIcon​(javax.swing.Icon icon)
        Setzt das Symbol für Gemeinsame-Eigenschaften-Nodes
        Parameters:
        icon -
      • setCollectionIcon

        public void setCollectionIcon​(javax.swing.Icon icon)
        Setzt das Symbol für Collection-Nodes
        Parameters:
        icon -
      • setPropertyIcon

        public void setPropertyIcon​(javax.swing.Icon icon)
        Setzt das Symbol für Eigenschaften-Nodes
        Parameters:
        icon -
      • setObjectIcon

        public void setObjectIcon​(javax.swing.Icon icon)
        Setzt das Symbol für Objekt-Nodes
        Parameters:
        icon -
      • setGroupIcon

        public void setGroupIcon​(javax.swing.Icon icon)
        Setzt das Symbol für Kategorie-Nodes
        Parameters:
        icon -