## 4.5 Radio Button

Radio buttons are usually arranged in groups and are used to select one from a group of mutualy exclusive choices, such as one of the several fonts or one of several colors. Associate to each group of radio buttons there is one internal group variable. When button 1 is pressed over a radio button, the group variable is set to the value associated with the radio button and the appearance of the button changes (border changes or indicator lights up). And its callbacks are then invoked.

### Widget Info

Symbolic widget type | EZ_WIDGET_RADIO_BUTTON
Default class name | "RadioButton"
Default instance name | "radiobutton"

### Widget Interface Routines

`int EZ_SetWidgetLabelString(EZ_Widget *widget, char *str);`

set the textual label.

`void EZ_SetWidgetLabelPixmap(EZ_Widget *widget, EZ_Bitmap *pixmap);`

set the pixmap label.

`char *EZ_GetWidgetLabelString(EZ_Widget *widget);`

return the textual label.

`void EZ_SetRadioButtonGroupVariableValue(EZ_Widget *widget, int value);`

set the value of the group variable corresponding to a radio button.

`int EZ_GetRadioButtonGroupVariableValue(EZ_Widget *widget);`

retrieve the value of the group variable corresponding to a radio button.

`int EZ_GetRadioButtonGroupID(EZ_Widget *widget);`

retrieve the group identifier of a radio button.

### Screenshot

### Resources

Config_Option | ResourceName | DefaultValue
EZ_CLASS | class | `"RadioButton"`
EZ_NAME | name | `"radioButton"`

EZ_X | x |
EZ_Y | y |
EZ_WIDTH | width |
EZ_HEIGHT | height |

EZ_LOCATION | location |
EZ_SIZE | size |
EZ_GEOMETRY | geometry |

EZ_WIDTH_HINT | widthHint |
EZ_HEIGHT_HINT | heightHint |
EZ_SIZE_HINT | sizeHint |

EZ_BORDER_WIDTH | borderWidth | `0`
EZ_BORDER_TYPE | borderType | `none`
EZ_FOCUS_PAD | focusPad | `2`

EZ_PADX | padx | `8`
EZ_PADY | pady | `6`
EZ_IPADX | iPadx | `8`
EZ_IPADY | iPady | `6`

EZ_EXPAND | expand | `false`
EZ_PROPAGATE | propagate | `true`
EZ_TRANSIENT | transient | `false`

EZ_ORIENTATION | orientation | `horizontal`
EZ_FILL_MODE | fillMode | `fillNone`
EZ_SIDE | side | `center`

EZ_FONT_ID | fontID | `3`
EZ_FONT_NAME | fontName | `"*Bold*"`
EZ_LABEL_STRING | labelString | `null`
EZ_LABEL_POSITION | labelPosition | `center`
EZ_JUSTIFICATION | justification | `left`
EZ_TEXT_LINE_LENGTH | textLineLength | `30`

EZ_UNDERLINE | underline | `-1`
EZ_CURSOR | cursor | `"XC_left_ptr"`
EZ_BUBBLE_STRING | bubbleString | `null`

EZ_CALLBACK | N/A | `null null`
EZ_DESTROY_CALLBACK | N/A | `null null`
EZ_EVENT_HANDLER | N/A | `null null`

EZ_PIXMAP_FILE | pixmapFile | `null`
EZ_IMAGE_FILE | imageFile | `null`
EZ_BITMAP_DATA | N/A | `null`
EZ_PIXMAP_DATA | N/A | `null`
EZ_X_PIXMAP | N/A | `none`
EZ_LABELPIXMAP | N/A | `null`
EZ_RAW_RGB_DATA | N/A | `null`
EZ_SHAPED_WINDOW | shapedWindow | `false`
EZ_SHAPE_FILE | shapeFile | `NULL`
EZ_SHAPE_PIXMAP | N/A | `NULL`

EZ_FOREGROUND | foreground | `"black"`
EZ_BACKGROUND | background | `"gray74`
EZ_BG_IMAGE_FILE | bgImageFile | `null`
EZ_BG_PIXMAP | N/A | `none`
EZ_HIGHLIGHT_FOREGROUND | highlightForeground |
EZ_HIGHLIGHT_BACKGROUND | highlightBackground |

EZ_CLIENT_PTR_DATA | N/A | `null`
EZ_CLIENT_INT_DATA | clientIntData | `0`

EZ_DND_DRAG_CURSOR | dndDragCursor | `none`
EZ_DND_BUBBLE_STRING | dndBubbleString | `null`

EZ_BACKING_STORE | backingStore | `false`
EZ_SHORTCUT_KEY | shortcutKey | `null`

EZ_INDICATOR_TYPE | indicatorType | `EZ_DIAMOND_INDICATIOR`
EZ_INDICATOR_COLOR | indicatorColor | `darkRed`
EZ_INDICATOR_SIZE_ADJUST | indicatorSizeAdjust | `0`

EZ_RADIO_BUTTON_GROUP | radioButtonGroup |
EZ_RADIO_BUTTON_VALUE | radioButtonValue |

EZ_GRID_CELL_GEOMETRY | gridCellGeometry | ``
EZ_GRID_CELL_PLACEMENT | gridCellPlacement |
EZ_GRID_CONSTRAINS | gridConstrains |

HTML Documentation Maintainance:`Arturo Espinosa <arturo@nuclecu.unam.mx>`