Die Schnittstelle IItemModel liefert die Basisfunktionen für
            alle Item Models. Es werden nicht für jeden Item Typ alle
                    Attribute ausgewertet, bzw. an ein konkretes Item gebunden. So
                    kann zum Beispiel der enabled State nur für
                    Action Items gesetzt werden, weil andere Items ein
                    disable nicht ermöglichen. Es folgt eine
                    kurze Beschreibung der wichtigsten Methoden:
                  
         
Mit Hilfe der folgenden Methode erhält man die id eines Items:
    String getId();
                         Die id darf weder null noch ein Leerstring
                         sein. Die id sollte möglichst global eindeutig sein. Wird
                         keine id definiert, wird per default eine UUID verwendet. Die
                         Item id wird für die Implementierung von
                         equals() und hashCode()
                         herangezogen. Zwei Items sind genau dann gleich, wenn ihre
                         id’s gleich sind. Es ist nicht möglich, zwei Items mit der
                         gleichen id zu einem Menü hinzuzufügen.
                       
            
Mit Hilfe der folgenden Methoden können der Label Text, das Tooltip und das Icon gesetzt und ausgelesen werden:
    void setText(final String text);
    String getText();
    void setToolTipText(String toolTipText);
    String getToolTipText();
    void setIcon(IImageConstant icon);
    IImageConstant getIcon();Mit den folgenden Methoden erhält man Zugriff auf Mnemonic und Key Accelerator:
    void setAccelerator(Accelerator accelerator);
    void setAccelerator(final VirtualKey key, final Modifier... modifier);
    Accelerator getAccelerator();
    void setMnemonic(Character mnemonic);
    void setMnemonic(char mnemonic);
    Character getMnemonic();
                         Mit den folgenden Methoden kann der enabled
                         State gesetzt und ausgelesen werden:
                       
            
    void setEnabled(boolean enabled);
    boolean isEnabled();Aktionen, welche nicht enabled sind, können nicht ausgeführt werden, und werden in der Regel ausgegraut dargestellt.
                         Mit Hilfe der folgenden Methoden kann der
                         visible State gesetzt und ausgelesen
                         werden:
                       
            
    void setVisible(boolean visible);
    boolean isVisible();
                         Items welche nicht visible sind, werden im
                         zugehörigen Menü nicht angezeigt, ohne das das Item aus dem
                         Menü Model entfernt werden muss.
                       
            
                         Mit Hilfe der folgenden Methoden kann ein
                         IItemModelListener registriert oder
                         deregistriert werden:
                       
            
    void addItemModelListener(IItemModelListener listener);
    void removeItemModelListener(IItemModelListener listener);Dieser hat die folgende Methode:
    void itemChanged(IItemModel item);
                         Diese wird immer aufgerufen, wenn ein Item geändert wurde, wie
                         zum Beispiel der Label Text, das Icon oder der
                         enabled oder visible
                         State.
                       
            
Mit Hilfe der folgenden Methode kann eine Kopie (Deep Copy) eines Item Models erzeugt werden. Die Kopie hat dabei die gleichen Items wie das Original (jedoch nicht die Selben). Registrierte Listener werden nicht mitkopiert. Dadurch sind bereits gebundene Items nicht an die Kopie gebunden.
    IItemModel createCopy();