module ui.RadioButtons; import ui.Control; class RadioButtons : Control { protected uiRadioButtons * _radioButtons; mixin EventListenerMixin!("OnSelected", RadioButtons); this() { _radioButtons = uiNewRadioButtons(); super(cast(uiControl *) _radioButtons); uiRadioButtonsOnSelected(_radioButtons, &OnSelectedCallback, cast(void *) this); } RadioButtons append(string text) { import std..string: toStringz; uiRadioButtonsAppend(_radioButtons, text.toStringz); return this; } size_t selected() { return cast(size_t) uiRadioButtonsSelected(_radioButtons); } RadioButtons setSelected(size_t index) { uiRadioButtonsSetSelected(_radioButtons, cast(int) index); return this; } }