Class MenuImpl

  • All Implemented Interfaces:
    Menu, MenuItem

    public class MenuImpl
    extends Object
    implements Menu

    Menu is an ordered list of MenuItems.

    • Field Detail

      • m_title

        protected String m_title
        The menu's title.
      • m_icon

        protected String m_icon
        The menu's icon.
      • m_enabled

        protected boolean m_enabled
        The menu's enabled flag.
      • m_items

        protected List<MenuItem> m_items
        The MenuItems, in order.
      • m_form

        protected String m_form
        The form name string for the entry.
      • m_linkBaseUrl

        protected String m_linkBaseUrl
        The base url for any action taken after clicking on the menu.
      • m_resourceBaseUrl

        protected String m_resourceBaseUrl
        The base url for any resources (images, etc.) required by the menu.
      • m_showDisabled

        protected boolean m_showDisabled
        The menu's flag for whether to display disabled entries
    • Constructor Detail

      • MenuImpl

        public MenuImpl​(String title,
                        String icon,
                        boolean enabled)
        Construct a menu (good for sub-menus).
      • MenuImpl

        public MenuImpl​(String title,
                        String icon,
                        boolean enabled,
                        String form)
        Construct a menu (good for sub-menus).
      • MenuImpl

        public MenuImpl()
        Construct a menu (good for a menu bar).
    • Method Detail

      • add

        public MenuItem add​(MenuItem item)
        Add a menu item to the bar.
        Specified by:
        add in interface Menu
        Parameters:
        entry - The menu item to add.
        Returns:
        the item.
      • clear

        public void clear()
        Clear the menu of all items.
        Specified by:
        clear in interface Menu
      • getIsContainer

        public boolean getIsContainer()
        Does this item act as a container for other items?
        Specified by:
        getIsContainer in interface MenuItem
        Returns:
        true if this MenuItem is a container for other items, false if not.
      • getIsDivider

        public boolean getIsDivider()
        Is this item a divider ?
        Specified by:
        getIsDivider in interface MenuItem
        Returns:
        true if this MenuItem is a divider, false if not.
      • getTitle

        public String getTitle()
        Access the display title for the item.
        Specified by:
        getTitle in interface MenuItem
        Returns:
        The display title for the item.
      • getIcon

        public String getIcon()
        Access the icon name for the item (or null if no icon).
        Specified by:
        getIcon in interface MenuItem
        Returns:
        The icon name for the item (or null if no icon).
      • getIsEnabled

        public boolean getIsEnabled()
        Access the enabled flag for the item.
        Specified by:
        getIsEnabled in interface MenuItem
        Returns:
        True if the item is enabled, false if not.
      • getAction

        public String getAction()
        Access the action string for this item; what to do when the user clicks. Note: if getIsMenu(), there will not be an action string (will return "").
        Specified by:
        getAction in interface MenuItem
        Returns:
        The action string for this item.
      • getUrl

        public String getUrl()
        Access the full URL string for this item; what to do when the user clicks. Note: this if defined overrides getAction() which should be "". Note: if getIsMenu(), there will not be a URL string (will return "").
        Specified by:
        getUrl in interface MenuItem
        Returns:
        The full URL string for this item.
      • getForm

        public String getForm()
        Access the form name whose values will be used when this item is selected.
        Specified by:
        getForm in interface MenuItem
        Returns:
        The form name whose values will be used when this item is selected.
      • getItems

        public List<MenuItem> getItems()
        Access the sub-items of the item. Note: if !isContainer(), there will be no sub-items (will return EmptyIterator).
        Specified by:
        getItems in interface MenuItem
        Returns:
        The sub-items of the item.
      • size

        public int size()
        Count the sub-items of the item. Note: if !isContainer(), the count is 0.
        Specified by:
        size in interface MenuItem
        Returns:
        The count of sub-items of the item.
      • isEmpty

        public boolean isEmpty()
        Check if there are any sub-items. Note: if !isContainer(), this is empty.
        Specified by:
        isEmpty in interface MenuItem
        Returns:
        true of there are no sub-items, false if there are.
      • getItem

        public MenuItem getItem​(int index)
        Access one sub-items of the item. Note: if !isContainer(), there will be no sub-items (will return null).
        Specified by:
        getItem in interface MenuItem
        Parameters:
        index - The index position (0 based) for the sub-item to get.
        Returns:
        The sub-item of the item.
      • getChecked

        public int getChecked()
        Access the checked status of this item. Possible values:
        Specified by:
        getChecked in interface MenuItem
        Returns:
        The the checked status of this item.
        See Also:
        MenuItem
      • getIsField

        public boolean getIsField()
        Access the is-field (not a button) flag.
        Specified by:
        getIsField in interface MenuItem
        Returns:
        True if the item is a field, false if not.
      • adjustDividers

        public void adjustDividers()
        Adjust by removing any dividers at the start or end.
        Specified by:
        adjustDividers in interface Menu
      • setShowdisabled

        public Menu setShowdisabled​(boolean value)
        Set whether disabled items in this menu should be shown.
        Specified by:
        setShowdisabled in interface Menu
        Parameters:
        value - True to show disabled items, False otherwise.
        Returns:
        This, for convenience.
      • getShowdisabled

        public boolean getShowdisabled()
        Access whether disabled items in this menu should be shown.
        Specified by:
        getShowdisabled in interface Menu
        Returns:
        Current setting for show-disabled status (true to show disabled items, false to NOT show disabled items).