Skip to main content

Radiobutton class

📖 Description

The Radiobutton class defines a radiobutton control for the Tripetto builder. It is derived from the DataControl class.

📺 Preview


🆕 constructor

Creates a new Radiobutton instance.

Signature

constructor(buttons: IButton[], value: any | Binding, style?: IRadiobuttonStyle): Radiobutton

Parameters

NameTypeOptionalDescription
buttonsIButton[]NoSpecifies the radiobuttons.
valueany | BindingNoSpecifies the initially selected value or a data binding created with bind.
styleIRadiobuttonStyleYesSpecifies the style (when omitted the default global style will be used).

Return value

Returns a reference to the new Radiobutton instance.

📌 Statics


🏷️ style

Contains the global default style for the radiobutton control.

Type

IRadiobuttonStyle


🔧 bind

Binds an object property to the control allowing its value to update automatically when the value of the control changes. If the control is disabled or invisible, the supplied valueWhenInactive is automatically set as the property value. When a control is enabled and visible, the supplied defaultWhenActive is set automatically if the property value is currently not defined.

Signature

bind<Target, P extends keyof Target>(
target: Target,
property: P,
valueWhenInactive: any,
defaultWhenActive?: any,
modifier?: (value?: any) => any
): Binding;

Parameters

NameTypeOptionalDescription
targetTargetNoReference to the target object which contains the property.
propertyPNoSpecifies the name of the property.
valueWhenInactiveanyNoSpecifies the value which is set to the property when the control is inactive (disabled or invisible).
defaultWhenActiveanyYesSpecifies the default (initial) value that will be used when the control is active (enabled and visible).
modifier(value?: any) => anyYesSpecifies a modifier function for the data.

Return value

Returns a Binding instance that can be used in the controls constructor to bind a value to a control.

Example

import { Forms } from "@tripetto/builder";

const example = {
selected: "a"
};

const radiobutton = new Forms.Radiobutton(
[
{
label: "Option A",
value: "a"
},
{
label: "Option B",
value: "b"
},
{
label: "Option C",
value: "c"
}
],
Forms.Radiobutton.bind(example, "selected", "a"));

🗃️ Fields


🏷️ hasFocus

Retrieves if the control has input focus.

Type

boolean


🏷️ isDisabled

Sets or retrieves if the control is disabled.

Type

boolean


🏷️ isLocked

Sets or retrieves if the control is locked (readonly).

Type

boolean


🏷️ isObservable

Retrieves if the control is observable.

Type

boolean


🏷️ isRequired

Sets or retrieves if the control is required.

Type

boolean


🏷️ isVisible

Sets or retrieves the visibility of the control.

Type

boolean


🏷️ style

Contains the radiobutton control style.

Type

IRadiobuttonStyle


🏷️ value

Sets or retrieves the selected value.

Type

any

▶️ Methods


🔧 blur

Blurs the focus of the control.

Signature

blur(): void

🔧 buttonDescription

Retrieves or sets the description of the specified button or the current button if no button value is specified.

Signature

buttonDescription(value?: any, description?: string): string

Parameters

NameTypeOptionalDescription
valueanyYesSpecifies the button value.
descriptionstringYesSpecifies a new description for the button.

Return value

Returns the description.


🔧 buttonDisabled

Sets or retrieves the disabled state of the specified button (or the current button if no button value is specified).

Signature

buttonDisabled(value?: any, disabled?: boolean): boolean

Parameters

NameTypeOptionalDescription
valueanyYesSpecifies the button value.
disabledbooleanYesSpecifies the disabled state.

Return value

Returns the disabled state.


🔧 buttonLabel

Retrieves or sets the label of the specified button or the current button if no button value is specified.

Signature

buttonLabel(value?: any, label?: string): string

Parameters

NameTypeOptionalDescription
valueanyYesSpecifies the button value.
labelstringYesSpecifies a new label for the button.

Return value

Returns the label.


🔧 buttonVisible

Sets or retrieves the visibility of the specified button (or the current button if no button value is specified).

Signature

buttonVisible(value?: any, visible?: boolean): boolean

Parameters

NameTypeOptionalDescription
valueanyYesSpecifies the button value.
visiblebooleanYesSpecifies the visibility.

Return value

Returns the visibility.


🔧 disable

Disables the control.

Signature

disable(): this

Return value

Returns a reference to the Dropdown instance to allow chaining.


🔧 disabled

Specifies the state of the control.

Signature

disabled(disabled?: boolean): this

Parameters

NameTypeOptionalDescription
disabledbooleanYesSpecifies if the control is disabled (default is true).

Return value

Returns a reference to the Dropdown instance to allow chaining.


🔧 enable

Enables the control.

Signature

enable(): this

Return value

Returns a reference to the Dropdown instance to allow chaining.


🔧 focus

Sets the focus to the control.

Signature

focus(): boolean

Return value

Returns true if the focus is set.


🔧 hide

Hides the control.

Signature

hide(): this

Return value

Returns a reference to the Dropdown instance to allow chaining.


🔧 indent

Enables control indentation. This can only be set during construction.

Signature

indent(size: number): this

Parameters

NameTypeOptionalDescription
sizenumberNoSpecifies the indent size in pixels.

Return value

Returns a reference to the Dropdown instance to allow chaining.


🔧 label

Sets the label for the control.

tip

If you want to use markdown in the label, activate it first using the markdown method.

Signature

label(label: string): this

Parameters

NameTypeOptionalDescription
labelstringNoSpecifies the control label.

Return value

Returns a reference to the Dropdown instance to allow chaining.


🔧 lock

Locks the control.

Signature

lock(): this

Return value

Returns a reference to the Dropdown instance to allow chaining.


🔧 locked

Specifies if the control is locked (readonly).

Signature

locked(locked?: boolean): this

Parameters

NameTypeOptionalDescription
lockedbooleanYesSpecifies if the control is locked/readonly (default is true).

Return value

Returns a reference to the Dropdown instance to allow chaining.


🔧 markdown

Specifies if the label should support markdown formatting.

Signature

markdown(options?: IMarkdownOptions): this

Parameters

NameTypeOptionalDescription
optionsIMarkdownOptionsYesSpecifies the markdown options.

Return value

Returns a reference to the Dropdown instance to allow chaining.


🔧 on

Specifies the function which is invoked when the radiobutton selection is changed.

Signature

on(fn: (pRadiobutton: Radiobutton) => void): this

Parameters

NameTypeOptionalDescription
fn(pRadiobutton: Radiobutton) => voidNoSpecifies the change function.

Return value

Returns a reference to the Radiobutton instance to allow chaining.


🔧 readonly

Makes the control readonly.

Signature

readonly(): this

Return value

Returns a reference to the Dropdown instance to allow chaining.


🔧 require

Makes the control required.

Signature

require(): this

Return value

Returns a reference to the Dropdown instance to allow chaining.


🔧 required

Specifies if the control is required.

Signature

required(required?: boolean): this

Parameters

NameTypeOptionalDescription
requiredbooleanYesSpecifies if the control is required (default is true).

Return value

Returns a reference to the Dropdown instance to allow chaining.


🔧 select

Selects the specified button.

Signature

select(value: any): this

Parameters

NameTypeOptionalDescription
valueanyNoSpecifies the button value.

Return value

Returns a reference to the Radiobutton instance to allow chaining.


🔧 show

Shows the control.

Signature

show(): this

Return value

Returns a reference to the Dropdown instance to allow chaining.


🔧 unlock

Unlocks the control.

Signature

unlock(): this

Return value

Returns a reference to the Dropdown instance to allow chaining.


🔧 visible

Specifies the visibility of the control.

Signature

visible(visible?: boolean): this

Parameters

NameTypeOptionalDescription
visiblebooleanYesSpecifies if the control is visible (default is true).

Return value

Returns a reference to the Dropdown instance to allow chaining.

⛓️ Interfaces


🔗 IRadiobuttonStyle

Describes the interface for the radiobutton styles.

Type declaration

interface IRadiobuttonStyle {
/* Control appearance. */
appearance?: IStyles;

/* Radiobutton appearance. */
radiobutton?: {
/* Radiobutton label. */
label?: IStyles;

/* Checked state. */
checked?: IStyles;

/* Unchecked state. */
unchecked?: IStyles;

/* Radiobutton disabled. */
disabled?: IRadiobuttonStyles;

/* Radiobutton focus. */
focus?: IRadiobuttonStyles;

/* Radiobutton hover. */
hover?: IRadiobuttonStyles;

/* Radiobutton description. */
description?: IStyles;
};

/* Control label. */
label?: IStyles;

/* Control disabled. */
disabled?: IStyles;

/* Control required. */
required?: IStyles;

/* Control locked. */
locked?: IStyles;

/* Validation passed. */
passed?: IStyles;

/* Validation failed. */
failed?: IStyles;

/* Validation awaiting. */
awaiting?: IStyles;

/* Radiobutton when fused with form card. */
fused?: {
/* Control appearance. */
appearance?: IStyles;

/* Control label. */
label?: IStyles;

/* Control required. */
required?: IStyles;
};
}

🔗 IButton

Describes the interface for a button.

Type declaration

interface IButton {
/* Label for the button. */
label: string;

/* Value for the button. */
value: any;

/* Specifies if the button is disabled. */
disabled?: boolean;

/* Specifies if the button is visible. */
visible?: boolean;

/* Specifies an additional description for the button. */
description?: string;

/* Specifies if markdown is supported for the label and description. */
markdown?: boolean | IMarkdownOptions;
}