Class VTree

  • All Implemented Interfaces:
    com.google.gwt.event.dom.client.BlurHandler, com.google.gwt.event.dom.client.FocusHandler, com.google.gwt.event.dom.client.HasBlurHandlers, com.google.gwt.event.dom.client.HasFocusHandlers, com.google.gwt.event.dom.client.HasKeyDownHandlers, com.google.gwt.event.dom.client.HasKeyPressHandlers, com.google.gwt.event.dom.client.KeyDownHandler, com.google.gwt.event.dom.client.KeyPressHandler, com.google.gwt.event.logical.shared.HasAttachHandlers, com.google.gwt.event.shared.EventHandler, com.google.gwt.event.shared.HasHandlers, com.google.gwt.user.client.EventListener, com.google.gwt.user.client.ui.AcceptsOneWidget, com.google.gwt.user.client.ui.HasOneWidget, com.google.gwt.user.client.ui.HasVisibility, com.google.gwt.user.client.ui.HasWidgets, com.google.gwt.user.client.ui.HasWidgets.ForIsWidget, com.google.gwt.user.client.ui.IsWidget, Focusable, ActionOwner, HandlesAriaCaption, VHasDropHandler, SubPartAware, Iterable<com.google.gwt.user.client.ui.Widget>

    public class VTree
    extends FocusElementPanel
    implements VHasDropHandler, com.google.gwt.event.dom.client.FocusHandler, com.google.gwt.event.dom.client.BlurHandler, com.google.gwt.event.dom.client.KeyPressHandler, com.google.gwt.event.dom.client.KeyDownHandler, SubPartAware, ActionOwner, HandlesAriaCaption
    • Field Detail

      • body

        public final com.google.gwt.user.client.ui.FlowPanel body
        For internal use only. May be removed or replaced in the future.
      • selectedIds

        public Set<String> selectedIds
        For internal use only. May be removed or replaced in the future.
      • client

        public ApplicationConnection client
        For internal use only. May be removed or replaced in the future.
      • paintableId

        public String paintableId
        For internal use only. May be removed or replaced in the future.
      • selectable

        public boolean selectable
        For internal use only. May be removed or replaced in the future.
      • isMultiselect

        public boolean isMultiselect
        For internal use only. May be removed or replaced in the future.
      • lastSelection

        public VTree.TreeNode lastSelection
        For internal use only. May be removed or replaced in the future.
      • focusedNode

        public VTree.TreeNode focusedNode
        For internal use only. May be removed or replaced in the future.
      • multiSelectMode

        public MultiSelectMode multiSelectMode
        For internal use only. May be removed or replaced in the future.
      • immediate

        public boolean immediate
        For internal use only. May be removed or replaced in the future.
      • isNullSelectionAllowed

        public boolean isNullSelectionAllowed
        For internal use only. May be removed or replaced in the future.
      • isHtmlContentAllowed

        public boolean isHtmlContentAllowed
        For internal use only. May be removed or replaced in the future.
      • disabled

        public boolean disabled
        For internal use only. May be removed or replaced in the future.
      • readonly

        public boolean readonly
        For internal use only. May be removed or replaced in the future.
      • rendering

        public boolean rendering
        For internal use only. May be removed or replaced in the future.
      • dragMode

        public int dragMode
        For internal use only. May be removed or replaced in the future.
      • bodyActionKeys

        public String[] bodyActionKeys
        For internal use only. May be removed or replaced in the future.
      • connector

        public TreeConnector connector
        For internal use only. May be removed or replaced in the future.
    • Constructor Detail

      • VTree

        public VTree()
    • Method Detail

      • onBrowserEvent

        public void onBrowserEvent​(com.google.gwt.user.client.Event event)
        Specified by:
        onBrowserEvent in interface com.google.gwt.user.client.EventListener
        Overrides:
        onBrowserEvent in class com.google.gwt.user.client.ui.Widget
      • getActionCaption

        public String getActionCaption​(String actionKey)
      • getActionIcon

        public String getActionIcon​(String actionKey)
      • getFirstRootNode

        protected VTree.TreeNode getFirstRootNode()
        Returns the first root node of the tree or null if there are no root nodes.
        Returns:
        The first root VTree.TreeNode
      • getLastRootNode

        protected VTree.TreeNode getLastRootNode()
        Returns the last root node of the tree or null if there are no root nodes.
        Returns:
        The last root VTree.TreeNode
      • getRootNodes

        protected List<VTree.TreeNode> getRootNodes()
        Returns a list of all root nodes in the Tree in the order they appear in the tree.
        Returns:
        A list of all root VTree.TreeNodes.
      • updateDropHandler

        public void updateDropHandler​(UIDL childUidl)
        For internal use only. May be removed or replaced in the future.
      • setSelected

        public void setSelected​(VTree.TreeNode treeNode,
                                boolean selected)
      • isSelected

        public boolean isSelected​(VTree.TreeNode treeNode)
        Is a node selected in the tree
        Parameters:
        treeNode - The node to check
        Returns:
      • deselectAll

        public void deselectAll()
        Deselects all items in the tree
      • getCommonGrandParent

        public VTree.TreeNode getCommonGrandParent​(VTree.TreeNode node1,
                                                   VTree.TreeNode node2)
        Returns the first common parent of two nodes
        Parameters:
        node1 - The first node
        node2 - The second node
        Returns:
        The common parent or null
      • setFocusedNode

        public void setFocusedNode​(VTree.TreeNode node,
                                   boolean scrollIntoView)
        Sets the node currently in focus
        Parameters:
        node - The node to focus or null to remove the focus completely
        scrollIntoView - Scroll the node into view
      • setFocusedNode

        public void setFocusedNode​(VTree.TreeNode node)
        Focuses a node and scrolls it into view
        Parameters:
        node - The node to focus
      • onFocus

        public void onFocus​(com.google.gwt.event.dom.client.FocusEvent event)
        Specified by:
        onFocus in interface com.google.gwt.event.dom.client.FocusHandler
      • onBlur

        public void onBlur​(com.google.gwt.event.dom.client.BlurEvent event)
        Specified by:
        onBlur in interface com.google.gwt.event.dom.client.BlurHandler
      • onKeyPress

        public void onKeyPress​(com.google.gwt.event.dom.client.KeyPressEvent event)
        Specified by:
        onKeyPress in interface com.google.gwt.event.dom.client.KeyPressHandler
      • onKeyDown

        public void onKeyDown​(com.google.gwt.event.dom.client.KeyDownEvent event)
        Specified by:
        onKeyDown in interface com.google.gwt.event.dom.client.KeyDownHandler
      • handleKeyNavigation

        protected boolean handleKeyNavigation​(int keycode,
                                              boolean ctrl,
                                              boolean shift)
        Handles the keyboard navigation
        Parameters:
        keycode - The keycode of the pressed key
        ctrl - Was ctrl pressed
        shift - Was shift pressed
        Returns:
        Returns true if the key was handled, else false
      • getNavigationUpKey

        protected int getNavigationUpKey()
        Get the key that moves the selection head upwards. By default it is the up arrow key but by overriding this you can change the key to whatever you want.
        Returns:
        The keycode of the key
      • getNavigationDownKey

        protected int getNavigationDownKey()
        Get the key that moves the selection head downwards. By default it is the down arrow key but by overriding this you can change the key to whatever you want.
        Returns:
        The keycode of the key
      • getNavigationLeftKey

        protected int getNavigationLeftKey()
        Get the key that scrolls to the left in the table. By default it is the left arrow key but by overriding this you can change the key to whatever you want.
        Returns:
        The keycode of the key
      • getNavigationRightKey

        protected int getNavigationRightKey()
        Get the key that scroll to the right on the table. By default it is the right arrow key but by overriding this you can change the key to whatever you want.
        Returns:
        The keycode of the key
      • getNavigationSelectKey

        protected int getNavigationSelectKey()
        Get the key that selects an item in the table. By default it is the space bar key but by overriding this you can change the key to whatever you want.
        Returns:
      • getNavigationPageUpKey

        protected int getNavigationPageUpKey()
        Get the key the moves the selection one page up in the table. By default this is the Page Up key but by overriding this you can change the key to whatever you want.
        Returns:
      • getNavigationPageDownKey

        protected int getNavigationPageDownKey()
        Get the key the moves the selection one page down in the table. By default this is the Page Down key but by overriding this you can change the key to whatever you want.
        Returns:
      • getNavigationStartKey

        protected int getNavigationStartKey()
        Get the key the moves the selection to the beginning of the table. By default this is the Home key but by overriding this you can change the key to whatever you want.
        Returns:
      • getNavigationEndKey

        protected int getNavigationEndKey()
        Get the key the moves the selection to the end of the table. By default this is the End key but by overriding this you can change the key to whatever you want.
        Returns:
      • getSubPartElement

        public com.google.gwt.user.client.Element getSubPartElement​(String subPart)
        Description copied from interface: SubPartAware
        Locates an element inside a component using the identifier provided in subPart. The subPart identifier is component specific and may be any string of characters, numbers, space characters and brackets.
        Specified by:
        getSubPartElement in interface SubPartAware
        Parameters:
        subPart - The identifier for the element inside the component
        Returns:
        The element identified by subPart or null if the element could not be found.
      • getSubPartName

        public String getSubPartName​(com.google.gwt.user.client.Element subElement)
        Description copied from interface: SubPartAware
        Provides an identifier that identifies the element within the component. The subElement is a part of the component and must never be null.

        Note! getSubPartElement(getSubPartName(element)) == element is not always true. A component can choose to provide a more generic identifier for any given element if the results of all interactions with subElement are the same as interactions with the element identified by the return value. For example a button can return an identifier for the root element even though a DIV inside the button was passed as subElement because interactions with the DIV and the root button element produce the same result.

        Specified by:
        getSubPartName in interface SubPartAware
        Parameters:
        subElement - The element the identifier string should uniquely identify
        Returns:
        An identifier that uniquely identifies subElement or null if no identifier could be provided.
      • registerAction

        public void registerAction​(String key,
                                   String caption,
                                   String iconUrl)
      • registerNode

        public void registerNode​(VTree.TreeNode treeNode)
      • clearNodeToKeyMap

        public void clearNodeToKeyMap()
      • bindAriaCaption

        public void bindAriaCaption​(com.google.gwt.user.client.Element captionElement)
        Description copied from interface: HandlesAriaCaption
        Called to bind the provided caption (label in HTML speak) element to the main input element of the Widget. Binding should be removed from the main input field when captionElement is null.
        Specified by:
        bindAriaCaption in interface HandlesAriaCaption
        Parameters:
        captionElement - Element of the caption