Button()
Creates a Material Design button with various style variants and a click callback.
Syntax
Result = MaterialSB::Button(Text.s, *Callback, Flags = #Button_Default, Parent = #Null)
Parameters
| Parameter | Description |
|---|---|
Text.s |
The button label text. |
*Callback |
Procedure address to call when the button is clicked, or #Null for no callback. |
Flags |
(Optional) Button style and behavior flags. Can be combined with |. |
Parent |
(Optional) Parent element. Uses current parent if #Null. |
Flags
| Flag | Description |
|---|---|
#Button_Default |
Standard filled button (default). |
#Button_Tonal |
Tonal button variant with muted fill. |
#Button_Outlined |
Button with outline border only. |
#Button_Elevated |
Button with elevation shadow. |
#Button_Text |
Text-only button with no background. |
#Button_Floating |
Floating action button (FAB) style. |
#Button_Large |
Large button size. |
#Button_Small |
Small button size. |
#Button_IconLeft |
Position icon on the left side. |
#Button_Disabled |
Disabled button state. |
Return Value
Returns the button DOM element.
Remarks
Buttons automatically have a 5-pixel margin applied. To add color, use AddClass() with a color constant.
Example
Procedure OnClickSave()
MaterialSB::Toast("Saved!", 2000)
EndProcedure
Procedure OnClickCancel()
MaterialSB::Toast("Cancelled", 2000)
EndProcedure
Procedure Main(Success)
If Success
MaterialSB::Row(MaterialSB::#Grid_Container)
MaterialSB::Col(12)
; Standard filled button
MaterialSB::Button("Save", @OnClickSave())
; Outlined button
MaterialSB::Button("Cancel", @OnClickCancel(), MaterialSB::#Button_Outlined)
; Large tonal button
MaterialSB::Button("Submit", #Null, MaterialSB::#Button_Tonal | MaterialSB::#Button_Large)
; Floating action button
fab = MaterialSB::Button("+", @OnClickSave(), MaterialSB::#Button_Floating)
MaterialSB::AddClass(fab, "red")
; Disabled button
MaterialSB::Button("Disabled", #Null, MaterialSB::#Button_Disabled)
MaterialSB::CloseCurrentParent()
MaterialSB::CloseCurrentParent()
EndIf
EndProcedure
MaterialSB::Download(@Main())