Package com.vaadin.ui

Class Button

    • Constructor Detail

      • Button

        public Button()
        Creates a new push button.
      • Button

        public Button​(String caption)
        Creates a new push button with the given caption.
        Parameters:
        caption - the Button caption.
      • Button

        public Button​(Resource icon)
        Creates a new push button with the given icon.
        Parameters:
        icon - the icon
      • Button

        public Button​(String caption,
                      Resource icon)
        Creates a new push button with the given caption and icon.
        Parameters:
        caption - the caption
        icon - the icon
      • Button

        public Button​(String caption,
                      Button.ClickListener listener)
        Creates a new push button with a click listener.
        Parameters:
        caption - the Button caption.
        listener - the Button click listener.
    • Method Detail

      • addClickListener

        public void addClickListener​(Button.ClickListener listener)
        Adds the button click listener.
        Parameters:
        listener - the Listener to be added.
      • removeClickListener

        public void removeClickListener​(Button.ClickListener listener)
        Removes the button click listener.
        Parameters:
        listener - the Listener to be removed.
      • click

        public void click()
        Simulates a button click, notifying all server-side listeners. No action is taken is the button is disabled.
      • fireClick

        protected void fireClick()
        Fires a click event to all listeners without any event details. In subclasses, override fireClick(MouseEventDetails) instead of this method.
      • fireClick

        protected void fireClick​(MouseEventDetails details)
        Fires a click event to all listeners.
        Parameters:
        details - MouseEventDetails from which keyboard modifiers and other information about the mouse click can be obtained. If the button was clicked by a keyboard event, some of the fields may be empty/undefined.
      • setClickShortcut

        public void setClickShortcut​(int keyCode,
                                     int... modifiers)
        Makes it possible to invoke a click on this button by pressing the given ShortcutAction.KeyCode and (optional) ShortcutAction.ModifierKeys.
        The shortcut is global (bound to the containing Window).
        Parameters:
        keyCode - the keycode for invoking the shortcut
        modifiers - the (optional) modifiers for invoking the shortcut, null for none
      • isDisableOnClick

        public boolean isDisableOnClick()
        Determines if a button is automatically disabled when clicked. See setDisableOnClick(boolean) for details.
        Returns:
        true if the button is disabled when clicked, false otherwise
      • setDisableOnClick

        public void setDisableOnClick​(boolean disableOnClick)
        Determines if a button is automatically disabled when clicked. If this is set to true the button will be automatically disabled when clicked, typically to prevent (accidental) extra clicks on a button.

        Note that this is only used when the click comes from the user, not when calling click() method programmatically. Also, if developer wants to re-enable the button, it needs to be done programmatically.

        Parameters:
        disableOnClick - true to disable button when it is clicked, false otherwise
      • getState

        protected ButtonState getState()
        Description copied from class: AbstractComponent
        Returns the shared state bean with information to be sent from the server to the client. Subclasses should override this method and set any relevant fields of the state returned by super.getState().
        Overrides:
        getState in class AbstractFocusable
        Returns:
        updated component shared state
      • setIcon

        public void setIcon​(Resource icon,
                            String iconAltText)
        Sets the component's icon and alt text. An alt text is shown when an image could not be loaded, and read by assisitve devices.
        Parameters:
        icon - the icon to be shown with the component's caption.
        iconAltText - String to use as alt text
      • getIconAlternateText

        public String getIconAlternateText()
        Returns the icon's alt text.
        Returns:
        String with the alt text
      • setIconAlternateText

        public void setIconAlternateText​(String iconAltText)
      • setHtmlContentAllowed

        public void setHtmlContentAllowed​(boolean htmlContentAllowed)
        Set whether the caption text is rendered as HTML or not. You might need to re-theme button to allow higher content than the original text style. If set to true, the captions are passed to the browser as html and the developer is responsible for ensuring no harmful html is used. If set to false, the content is passed to the browser as plain text.
        Parameters:
        htmlContentAllowed - true if caption is rendered as HTML, false otherwise
      • isHtmlContentAllowed

        public boolean isHtmlContentAllowed()
        Return HTML rendering setting
        Returns:
        true if the caption text is to be rendered as HTML, false otherwise
      • readDesign

        public void readDesign​(org.jsoup.nodes.Element design,
                               DesignContext designContext)
        Description copied from interface: Component
        Reads the component state from the given design.

        The component is responsible not only for updating its own state but also for ensuring that its children update their state based on the design.

        It is assumed that the component is in its default state when this method is called. Reading should only take into consideration attributes specified in the design and not reset any unspecified attributes to their defaults.

        This method must not modify the design.

        Specified by:
        readDesign in interface Component
        Overrides:
        readDesign in class AbstractComponent
        Parameters:
        design - The element to obtain the state from
        designContext - The DesignContext instance used for parsing the design
      • writeDesign

        public void writeDesign​(org.jsoup.nodes.Element design,
                                DesignContext designContext)
        Description copied from interface: Component
        Writes the component state to the given design.

        The component is responsible not only for writing its own state but also for ensuring that its children write their state to the design.

        This method must not modify the component state.

        Specified by:
        writeDesign in interface Component
        Overrides:
        writeDesign in class AbstractComponent
        Parameters:
        design - The element to write the component state to. Any previous attributes or child nodes are not cleared.
        designContext - The DesignContext instance used for writing the design