Class MenuEntry

  • All Implemented Interfaces:
    org.sakaiproject.cheftool.api.MenuItem

    public class MenuEntry
    extends Object
    implements org.sakaiproject.cheftool.api.MenuItem

    MenuEntry is a clickable entry in a menu.

    • Field Detail

      • m_title

        protected String m_title
        The display title for the entry.
      • m_icon

        protected String m_icon
        The icon name for the entry.
      • m_enabled

        protected boolean m_enabled
        The enabled flag for the entry.
      • m_current

        protected boolean m_current
        The current flag for the entry.
      • m_action

        protected String m_action
        The action string for the entry.
      • m_url

        protected String m_url
        The full URL string for the entry.
      • m_form

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

        protected int m_checked
        The checked status (@see MenuItem for values).
      • m_accessibilitylabel

        protected String m_accessibilitylabel
        The acessibility label for the entry.
    • Constructor Detail

      • MenuEntry

        public MenuEntry​(String title,
                         String accessibilityLabel,
                         String icon,
                         boolean enabled,
                         int checked,
                         String action,
                         String form)
        Construct a menu.
      • MenuEntry

        public MenuEntry​(String title,
                         String icon,
                         boolean enabled,
                         int checked,
                         String action)
        Construct a menu.
      • MenuEntry

        public MenuEntry​(String title,
                         boolean enabled,
                         String action)
        Construct a menu.
      • MenuEntry

        public MenuEntry​(String title,
                         String action)
        Construct a menu.
      • MenuEntry

        public MenuEntry​(String title,
                         String accessibilityLabel,
                         String icon,
                         boolean enabled,
                         int checked,
                         String action)
        Construct a menu.
      • MenuEntry

        public MenuEntry​(String title,
                         String accessibilityLabel,
                         String action)
        Construct a menu.
      • MenuEntry

        public MenuEntry​(String title,
                         String accessibilityLabel,
                         boolean enabled,
                         String action)
      • MenuEntry

        public MenuEntry​(String title,
                         String icon,
                         boolean enabled,
                         int checked,
                         String action,
                         String form)
        Construct a menu.
    • Method Detail

      • setUrl

        public MenuEntry setUrl​(String url)
        Set the full URL of the entry. To create an entry with a URL, create one first with a "" action, then call this.
        Parameters:
        url - The full URL for the entry.
        Returns:
        This, for convenience.
      • getIsContainer

        public boolean getIsContainer()
        Does this item act as a container for other items?
        Specified by:
        getIsContainer in interface org.sakaiproject.cheftool.api.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 org.sakaiproject.cheftool.api.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 org.sakaiproject.cheftool.api.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 org.sakaiproject.cheftool.api.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 org.sakaiproject.cheftool.api.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 ""). Note: if the entry is not enabled, this will return "".
        Specified by:
        getAction in interface org.sakaiproject.cheftool.api.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 org.sakaiproject.cheftool.api.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 org.sakaiproject.cheftool.api.MenuItem
        Returns:
        The form name whose values will be used when this item is selected.
      • getItems

        public List<org.sakaiproject.cheftool.api.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 org.sakaiproject.cheftool.api.MenuItem
        Returns:
        The sub-items of the item.
      • getItem

        public org.sakaiproject.cheftool.api.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 org.sakaiproject.cheftool.api.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 org.sakaiproject.cheftool.api.MenuItem
        Returns:
        The checked status of this item.
        See Also:
        MenuItem
      • getIschecked

        public boolean getIschecked()
        Access the checked status of this item.
        Returns:
        True if item is checked, false otherwise.
      • size

        public int size()
        Count the sub-items of the item. Note: if !isContainer(), the count is 0.
        Specified by:
        size in interface org.sakaiproject.cheftool.api.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 org.sakaiproject.cheftool.api.MenuItem
        Returns:
        true of there are no sub-items, false if there are.
      • getIsField

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

        public boolean getIsCurrent()
        Specified by:
        getIsCurrent in interface org.sakaiproject.cheftool.api.MenuItem
      • setIsCurrent

        public void setIsCurrent​(boolean current)
        If you set this to true, this menu item will be displayed as the current selected item.
      • getAccessibilityLabel

        public String getAccessibilityLabel()
        Specified by:
        getAccessibilityLabel in interface org.sakaiproject.cheftool.api.MenuItem