Class RibbonMenuButton

All Implemented Interfaces:
HasAttachHandlers, HasHandlers, EventListener, HasVisibility, IsWidget, LogicalStructure, HasClearHandlers, HasClickHandlers, HasDoubleClickHandlers, HasDragMoveHandlers, HasDragRepositionMoveHandlers, HasDragRepositionStartHandlers, HasDragRepositionStopHandlers, HasDragResizeMoveHandlers, HasDragResizeStartHandlers, HasDragResizeStopHandlers, HasDragStartHandlers, HasDragStopHandlers, HasDropHandlers, HasDropMoveHandlers, HasDropOutHandlers, HasDropOverHandlers, HasFocusChangedHandlers, HasHoverHandlers, HasHoverHiddenHandlers, HasIconClickHandlers, HasKeyDownHandlers, HasKeyPressHandlers, HasMouseDownHandlers, HasMouseMoveHandlers, HasMouseOutHandlers, HasMouseOverHandlers, HasMouseStillDownHandlers, HasMouseUpHandlers, HasMouseWheelHandlers, HasMovedHandlers, HasParentMovedHandlers, HasResizedHandlers, HasRightMouseDownHandlers, HasRuleContextChangedHandlers, HasScrolledHandlers, HasShowContextMenuHandlers, HasTitleHoverHandlers, HasVisibilityChangedHandlers, HasMenuIconClickHandlers

public class RibbonMenuButton extends RibbonButton
A simple subclass of RibbonButton that shows a menuIcon by default and implements showMenu().

This class has showMenuIcon set to true by default, and has a RibbonButton.menuIconClick() handler which will show the specified RibbonButton.menu via a call to RibbonButton.showMenu(). This menuIconClick handler cancels default click behavior, so, if a user clicks the menu icon, any specified click handler for the button as a whole will not fire.

  • Constructor Details

    • RibbonMenuButton

      public RibbonMenuButton()
    • RibbonMenuButton

      public RibbonMenuButton(JavaScriptObject jsObj)
    • RibbonMenuButton

      public RibbonMenuButton(String title)
    • RibbonMenuButton

      public RibbonMenuButton(String title, Menu menu)
  • Method Details

    • getOrCreateRef

      public static RibbonMenuButton getOrCreateRef(JavaScriptObject jsObj)
    • changeAutoChildDefaults

      public static void changeAutoChildDefaults(String autoChildName, Canvas defaults)
      Changes the defaults for Canvas AutoChildren named autoChildName.
      Parameters:
      autoChildName - name of an AutoChild to customize the defaults for.
      defaults - Canvas defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties. For usage tips on this param, see SGWTProperties.
      See Also:
    • changeAutoChildDefaults

      public static void changeAutoChildDefaults(String autoChildName, FormItem defaults)
      Changes the defaults for FormItem AutoChildren named autoChildName.
      Parameters:
      autoChildName - name of an AutoChild to customize the defaults for.
      defaults - FormItem defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties. For usage tips on this param, see SGWTProperties.
      See Also:
    • create

      protected JavaScriptObject create()
      Overrides:
      create in class RibbonButton
    • setShowMenuIcon

      public RibbonMenuButton setShowMenuIcon(Boolean showMenuIcon)
      Whether to show the menu-icon which fires the RibbonButton.menuIconClick() notification method when clicked.
      Overrides:
      setShowMenuIcon in class RibbonButton
      Parameters:
      showMenuIcon - New showMenuIcon value. Default value is true
      Returns:
      RibbonMenuButton instance, for chaining setter calls
    • getShowMenuIcon

      public Boolean getShowMenuIcon()
      Whether to show the menu-icon which fires the RibbonButton.menuIconClick() notification method when clicked.
      Overrides:
      getShowMenuIcon in class RibbonButton
      Returns:
      Current showMenuIcon value. Default value is true
    • setDefaultProperties

      public static void setDefaultProperties(RibbonMenuButton ribbonMenuButtonProperties)
      Class level method to set the default properties of this class. If set, then all existing and subsequently created instances of this class will automatically have default properties corresponding to the properties set on the SmartGWT class instance passed to this function before its underlying SmartClient JS object was created. This is a powerful feature that eliminates the need for users to create a separate hierarchy of subclasses that only alter the default properties of this class. Can also be used for skinning / styling purposes.

      Note: This method is intended for setting default attributes only and will affect all instances of the underlying class (including those automatically generated in JavaScript). This method should not be used to apply standard EventHandlers or override methods for a class - use a custom subclass instead. Calling this method after instances have been created can result in undefined behavior, since it bypasses any setters and a class instance may have already examined a particular property and not be expecting any changes through this route.

      Parameters:
      ribbonMenuButtonProperties - properties that should be used as new defaults when instances of this class are created
      See Also:
    • setLogicalStructure

      Setter implementing the LogicalStructure interface, which supports Eclipse's logical structure debugging facility.
    • getLogicalStructure

      public LogicalStructureObject getLogicalStructure()
      Getter implementing the LogicalStructure interface, which supports Eclipse's logical structure debugging facility.
      Specified by:
      getLogicalStructure in interface LogicalStructure
      Overrides:
      getLogicalStructure in class RibbonButton