8.1.16 The radio-button-choice Widget

Syntax:

type ::= (radio-button-choice [keyword argument]...  type ... )

A widget to represent a choice from multiple options. Its super is the default widget.

The component types specify the choices, with one radio button for each. The widget’s value will be that of the chosen type argument.

It overrides the following properties:

:convert-widget

As other composite widgets, a function that takes care of converting each available choice.

:copy

A function to copy each available choice.

:action

A function that checks if any radio button was pressed and activates the pressed one, possibly deactivating an old one. Then, it notifies itself.

:entry-format

This string will be inserted for each entry in the list. The following ‘%’ escapes are available:

%v

Replace with the buffer representation of the type widget.

%b

Replace with the radio button.

%%

Insert a literal ‘%’.

:format

By default, it inserts its value.

:button-args

A list of keywords to pass to the radio buttons. Useful for setting, e.g., the ‘:help-echo’ for each button.

:buttons

The widgets representing the radio buttons.

:children

The widgets representing each type.

:choice

The current chosen type.

:args

The list of types.

:value-create

A function to insert all available choices.

:value-get

Returns the value for the chosen widget.

:value-set

A function to set the value to one of its available options.

:value-inline

A function that returns the inline value of the child widget.

:offset

By default, this widget has an offset of 4.

:validate

The widget validates if the current value is valid for one of its children.

:match

This widget matches any value that matches at least one of the specified type arguments.

:match-inline

Like the :match function, but taking into account inline values.

You can add extra radio button items to a radio-button-choice widget after it has been created with the function widget-radio-add-item.

Function: widget-radio-add-item widget type

Add to radio-button-choice widget widget a new radio button item of type type.

Please note that such items added after the radio-button-choice widget has been created will not be properly destructed when you call widget-delete.