Package org.dwcj.controls.button
Class Button
java.lang.Object
org.dwcj.controls.AbstractControl
org.dwcj.controls.AbstractDwcControl
org.dwcj.controls.button.Button
- All Implemented Interfaces:
Control,Enableable,Focusable,HasAttribute,HasClassName,HasComputedStyle,HasControlText,HasDestroy,HasStyle,HasTooltip,HasVisibility,TabTraversable,TextAlignable
public final class Button
extends AbstractDwcControl
implements Focusable, TabTraversable, TextAlignable
A Push Button
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumstatic enumstatic enumNested classes/interfaces inherited from interface org.dwcj.interfaces.TextAlignable
TextAlignable.Alignment -
Field Summary
Fields inherited from class org.dwcj.controls.AbstractDwcControl
BASISNUMBER_1, BASISNUMBER_25, BASISNUMBER_250, focusable, horizontalScrollBarPosition, mouseWheelCondition, readOnly, STR_EXPANSE, STR_THEME, tabTraversable, textAlignment, textHighlight, verticalScrollBarPositionFields inherited from class org.dwcj.controls.AbstractControl
ctrl, destroyed, elementId, userData -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddClassName(String selector) Adds a CSS class to the list of CSS classes for the control.protected voidcatchUp()The catchUp method is used to replay attributes and settings that the API user might have added to a control before its creation.protected voidCreate the object on a panel p.Accessor to return the button object's current expanseReturns a value indicating the text's horizontal alignment.getTheme()Accessor to return the button object's current themeAccessor for the vertical alignment of text within the buttonAccessor for whether or not the button is disabled.isFocusable returns a value indicating whether or not the user can focus the control.Returns a boolean indicating whether or not the user can navigate to the control using the tab key.onClick(Consumer<ButtonClickEvent> callback) register an event callback for the click eventremoveClassName(String selector) Removes a CSS class from the list of CSS classes for the control.setAttribute(String attribute, String value) set the value for an attribute in the controlsetDisableOnClick(Boolean disable) Mutator for whether or not the button is disabled on clicksetEnabled(Boolean enabled) Set whether the control is to be enabledsetExpanse(Button.Expanse expanse) Mutator to change the expanse of a button that requires a specific button enum valuesetFocusable(Boolean focusable) setFocusable sets whether a control can be focused.Assigns the ID of a controlAssigns specified value to the specified CSS propertysetTabTraversable(Boolean traversable) Sets whether or not the user can navigate to the control using the tab key.set the text of the control Each control implementing this interface has a text property, which might be visible in different ways (caption, title, contents of edit) or sometimes not visible at allsetTextAlignment(TextAlignable.Alignment alignment) Sets the horizontal alignment of the text within the control.setTheme(Button.Theme theme) Mutator to change the theme of a button that requires a specific button enum valuesetTooltipText(String text) Set the tooltip text of the controlsetVerticalAlignment(Button.TextVerticalAlignment alignment) Mutator for the vertical alignment of text within the buttonsetVisible(Boolean visible) Set whether the control is visible or invisibleMethods inherited from class org.dwcj.controls.AbstractDwcControl
destroy, getAttribute, getComputedStyle, getText, getTooltipText, isEnabled, isVisible, setControlExpanse, setControlThemeMethods inherited from class org.dwcj.controls.AbstractControl
getCaughtUp, getId, getUserData, isDestroyed, setUserData
-
Constructor Details
-
Button
public Button() -
Button
Parameterized button constructor, accepts a string as an argument which will be the initial text displayed on the button- Parameters:
text- String value for initial button text
-
-
Method Details
-
create
Description copied from class:AbstractControlCreate the object on a panel p. The preferred way of creating an object is using the Panel::add(Control) method, instead of this- Overrides:
createin classAbstractControl- Parameters:
p- the panel to add this control on
-
onClick
register an event callback for the click event- Parameters:
callback- A method to receive the click event- Returns:
- the control itself
-
isDisableOnClick
Accessor for whether or not the button is disabled.- Returns:
- Boolean value
-
setDisableOnClick
Mutator for whether or not the button is disabled on click- Parameters:
disable- Boolean value- Returns:
- Instance of the object to enable method chaining.
-
getVerticalAlignment
Accessor for the vertical alignment of text within the button- Returns:
- Enum value of text's vertical alignment
-
setVerticalAlignment
Mutator for the vertical alignment of text within the button- Parameters:
Button- TextVerticalAlignment enum value- Returns:
- The Button itself
-
setText
Description copied from interface:HasControlTextset the text of the control Each control implementing this interface has a text property, which might be visible in different ways (caption, title, contents of edit) or sometimes not visible at all- Specified by:
setTextin interfaceHasControlText- Overrides:
setTextin classAbstractDwcControl- Returns:
- the control itself
-
setVisible
Description copied from interface:HasVisibilitySet whether the control is visible or invisible- Specified by:
setVisiblein interfaceHasVisibility- Overrides:
setVisiblein classAbstractDwcControl- Returns:
- the control itself
-
setEnabled
Description copied from interface:EnableableSet whether the control is to be enabled- Specified by:
setEnabledin interfaceEnableable- Overrides:
setEnabledin classAbstractDwcControl- Returns:
- the control itself
-
setTooltipText
Description copied from interface:HasTooltipSet the tooltip text of the control- Specified by:
setTooltipTextin interfaceHasTooltip- Overrides:
setTooltipTextin classAbstractDwcControl- Returns:
- the control itself
-
setAttribute
Description copied from class:AbstractDwcControlset the value for an attribute in the control- Specified by:
setAttributein interfaceHasAttribute- Overrides:
setAttributein classAbstractDwcControl- Parameters:
attribute- the name of the attributevalue- the value to be set- Returns:
- the control itself
-
setId
Description copied from interface:ControlAssigns the ID of a control- Specified by:
setIdin interfaceControl- Overrides:
setIdin classAbstractControl- Parameters:
elementId- Desired ID designation- Returns:
- The control itself
-
setStyle
Description copied from interface:HasStyleAssigns specified value to the specified CSS property- Specified by:
setStylein interfaceHasStyle- Overrides:
setStylein classAbstractDwcControl- Parameters:
property- The CSS property to be changedvalue- The value of the selected CSS property- Returns:
- The control itself
-
addClassName
Description copied from interface:HasClassNameAdds a CSS class to the list of CSS classes for the control.- Specified by:
addClassNamein interfaceHasClassName- Overrides:
addClassNamein classAbstractDwcControl- Returns:
- The control itself
-
removeClassName
Description copied from interface:HasClassNameRemoves a CSS class from the list of CSS classes for the control.- Specified by:
removeClassNamein interfaceHasClassName- Overrides:
removeClassNamein classAbstractDwcControl- Returns:
- The control itself
-
getExpanse
Accessor to return the button object's current expanse- Returns:
- Expanse enum from the button class
-
setExpanse
Mutator to change the expanse of a button that requires a specific button enum value- Parameters:
expanse- button expanse enum value- Returns:
- The button object itself
-
getTheme
Accessor to return the button object's current theme- Returns:
- Expanse enum from the button class
-
setTheme
Mutator to change the theme of a button that requires a specific button enum value- Parameters:
theme- button theme enum value- Returns:
- The button object itself
-
isFocusable
Description copied from interface:FocusableisFocusable returns a value indicating whether or not the user can focus the control. Note: A focused control is the control to which keyboard interaction is directed. Typically, the focused control is indicated visually, often via a dotted grey border. A control which is not focusable, therefore, cannot be manipulated via the keyboard. It is still possible to interact with a non-focusable control via the mouse.- Specified by:
isFocusablein interfaceFocusable- Returns:
- True if object can be focused, False if not.
-
setFocusable
Description copied from interface:FocusablesetFocusable sets whether a control can be focused. Note: A focused control is the control to which keyboard interaction is directed. Typically, the focused control is indicated visually, often via a dotted grey border. A control which is not focusable, therefore, cannot be manipulated via the keyboard. It is still possible to interact with a non-focusable control via the mouse. To disable all interaction, including the mouse, see setEnabled() and setReadOnly().- Specified by:
setFocusablein interfaceFocusable- Parameters:
focusable- Boolean True for allowing focusing, False to disable focus- Returns:
- Object itself
-
isTabTraversable
Description copied from interface:TabTraversableReturns a boolean indicating whether or not the user can navigate to the control using the tab key.- Specified by:
isTabTraversablein interfaceTabTraversable- Returns:
- True if user can navigate to control with Tab key, False if not
-
setTabTraversable
Description copied from interface:TabTraversableSets whether or not the user can navigate to the control using the tab key.- Specified by:
setTabTraversablein interfaceTabTraversable- Parameters:
traversable- Boolean dictating tab traversal. True if control can be navigated to with Tab, False if not.- Returns:
- The control itself
-
getTextAlignment
Description copied from interface:TextAlignableReturns a value indicating the text's horizontal alignment.- Specified by:
getTextAlignmentin interfaceTextAlignable- Returns:
-
setTextAlignment
Description copied from interface:TextAlignableSets the horizontal alignment of the text within the control.- Specified by:
setTextAlignmentin interfaceTextAlignable- Parameters:
alignment- Enum from list representing an internal BBj numeric constant- Returns:
- The control itself
-
catchUp
Description copied from class:AbstractDwcControlThe catchUp method is used to replay attributes and settings that the API user might have added to a control before its creation. A control is not created before it's added to a panel. Anything that is added between instantiation of a control and its addition to a panel has to be recorded and replayed in this method- Overrides:
catchUpin classAbstractDwcControl- Throws:
IllegalAccessException- - thrown if an attempt is made to call this method more than once
-