Class UserTreeModel

  • All Implemented Interfaces:
    java.io.Serializable, org.zkoss.zul.ext.Openable<com.saperion.intf.wf.WorkflowMember>, org.zkoss.zul.ext.Pageable, org.zkoss.zul.ext.Selectable<com.saperion.intf.wf.WorkflowMember>, org.zkoss.zul.ext.TreeOpenableModel, org.zkoss.zul.ext.TreeSelectableModel, org.zkoss.zul.PageableModel, org.zkoss.zul.TreeModel<com.saperion.intf.wf.WorkflowMember>

    public class UserTreeModel
    extends org.zkoss.zul.AbstractTreeModel<com.saperion.intf.wf.WorkflowMember>
    Author:
    tfr Model for the tree in user selection dialog
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class org.zkoss.zul.AbstractTreeModel

        org.zkoss.zul.AbstractTreeModel.DefaultSelectionControl<E extends java.lang.Object>, org.zkoss.zul.AbstractTreeModel.Path
    • Field Summary

      • Fields inherited from class org.zkoss.zul.AbstractTreeModel

        _opens, _selection
      • Fields inherited from interface org.zkoss.zul.PageableModel

        INTERNAL_EVENT
    • Constructor Summary

      Constructors 
      Constructor Description
      UserTreeModel​(com.saperion.intf.wf.WorkflowMember root)
      Constructor.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void adaptChildren​(com.saperion.intf.wf.WorkflowMember member)
      Adapts the children of the given member.
      void applyFilter​(java.lang.String filter)  
      com.saperion.intf.wf.WorkflowMember getChild​(com.saperion.intf.wf.WorkflowMember parent, int index)  
      int getChildCount​(com.saperion.intf.wf.WorkflowMember parent)  
      boolean isLeaf​(com.saperion.intf.wf.WorkflowMember node)  
      static void perhapsAdaptChildren​(com.saperion.intf.wf.WorkflowMember root)
      Adapts the children of the given root, but only if the favorite folder is not the first child.
      • Methods inherited from class org.zkoss.zul.AbstractTreeModel

        addOpenObject, addOpenPath, addOpenPaths, addPagingEventListener, addSelectionPath, addSelectionPaths, addToSelection, addTreeDataListener, afterSort, beforeSort, clearOpen, clearSelection, clone, fireEvent, fireEvent, fireEvent, fireOpenChanged, fireSelectionChanged, getActivePage, getChild, getIndexOfChild, getOpenCount, getOpenObjects, getOpenPath, getOpenPaths, getPageCount, getPageSize, getPath, getRoot, getSelection, getSelectionControl, getSelectionCount, getSelectionPath, getSelectionPaths, isMultiple, isObjectOpened, isOpenEmpty, isPathOpened, isPathSelected, isSelected, isSelectionEmpty, removeFromSelection, removeOpenObject, removeOpenPath, removeOpenPaths, removePagingEventListener, removeSelectionPath, removeSelectionPaths, removeTreeDataListener, setActivePage, setMultiple, setOpenObjects, setPageSize, setSelection, setSelectionControl
      • Methods inherited from class java.lang.Object

        equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • UserTreeModel

        public UserTreeModel​(com.saperion.intf.wf.WorkflowMember root)
        Constructor.
        Parameters:
        root - root of tree
    • Method Detail

      • getChild

        public com.saperion.intf.wf.WorkflowMember getChild​(com.saperion.intf.wf.WorkflowMember parent,
                                                            int index)
      • getChildCount

        public int getChildCount​(com.saperion.intf.wf.WorkflowMember parent)
      • isLeaf

        public boolean isLeaf​(com.saperion.intf.wf.WorkflowMember node)
      • applyFilter

        public void applyFilter​(java.lang.String filter)
        Parameters:
        filter - filter string
      • adaptChildren

        public void adaptChildren​(com.saperion.intf.wf.WorkflowMember member)
        Adapts the children of the given member.

        This method processes the children of the specified `WorkflowMember` to handle special cases such as the favorite folder and role class members.

        - If a child is a favorite folder (identified by SaUserInfo.UIDFAVORITE), it is moved to the first position and its children are removed from the root level. - If a child is a role class member (identified by SaUserInfo.GroupKind.GRPROLECLASS), it is removed from the list. - All elements following the favorite folder become its children.

        Parameters:
        member - the `WorkflowMember` whose children are to be adapted
      • perhapsAdaptChildren

        public static void perhapsAdaptChildren​(com.saperion.intf.wf.WorkflowMember root)
        Adapts the children of the given root, but only if the favorite folder is not the first child.
        Parameters:
        root - root