OudsButton class
Buttons are interactive elements designed to trigger specific actions or events when tapped by a user.
This version of the button uses the text only layout which is the most used layout. Other layouts are available for this component: text + icon and icon only.
Note that in the case it is placed in an OudsColoredBox
, its monochrome variant is automatically displayed.
Some tokens associated with these specific colors can be customized and are identified with the Mono
suffix (for instance OudsButtonTokens.colorBgDefaultEnabledMono
).
Parameters:
- label: Label displayed in the button which describes the button action. Use action verbs or phrases to tell the user what will happen next.
- icon: Icon displayed in the button. Use an icon to add additional affordance where the icon has a clear and well-established meaning.
- onPressed: Callback invoked when the button is clicked.
Controls the enabled state of the button when style is equal to OudsButtonStyle.defaultStyle
When
false
, this button will not be clickable. Has no effect when style is equal to OudsButtonStyle.loading. - style: The OudsButtonStyle used for the button. Use OudsButtonStyle.defaultStyle for a standard button, or OudsButtonStyle.loading to indicate an ongoing operation.
- hierarchy: The button appearance based on its OudsButtonHierarchy.
A button with OudsButtonHierarchy.negative hierarchy is not allowed as a direct or indirect child of an
OudsColoredBox
and will throw anIllegalStateException
.
You can use OudsButton like this :
Text only button :
This is the default layout of the component.
OudsButton(
label: 'Button',
style: OudsButtonStyle.defaultStyle,
hierarchy: OudsButtonHierarchy.defaultHierarchy,
onPressed: () {
// Handle button tap.
},
);
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- OudsButton
Constructors
- OudsButton.new({Key? key, String? label, Widget? icon, VoidCallback? onPressed, required OudsButtonStyle style, required OudsButtonHierarchy hierarchy})
-
const
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- hierarchy → OudsButtonHierarchy
-
final
- icon → Widget?
-
final
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- label → String?
-
final
- layout → OudsButtonLayout
-
Property that detects and returns the button layout based on the provided elements (text and/or icon)
no setter
- onPressed → VoidCallback?
-
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- style → OudsButtonStyle
-
final
Methods
-
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → State< OudsButton> -
Creates the mutable state for this widget at a given location in the tree.
override
-
debugDescribeChildren(
) → List< DiagnosticsNode> -
Returns a list of DiagnosticsNode objects describing this node's
children.
inherited
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toDiagnosticsNode(
{String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode -
Returns a debug representation of the object that is used by debugging
tools and by DiagnosticsNode.toStringDeep.
inherited
-
toString(
{DiagnosticLevel minLevel = DiagnosticLevel.info}) → String -
A string representation of this object.
inherited
-
toStringDeep(
{String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String -
Returns a string representation of this node and its descendants.
inherited
-
toStringShallow(
{String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String -
Returns a one-line detailed description of the object.
inherited
-
toStringShort(
) → String -
A short, textual description of this widget.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited