EasyGUI
gui_radio.h
1 
6 /*
7  * Copyright (c) 2019 Tilen MAJERLE
8  *
9  * Permission is hereby granted, free of charge, to any person
10  * obtaining a copy of this software and associated documentation
11  * files (the "Software"), to deal in the Software without restriction,
12  * including without limitation the rights to use, copy, modify, merge,
13  * publish, distribute, sublicense, and/or sell copies of the Software,
14  * and to permit persons to whom the Software is furnished to do so,
15  * subject to the following conditions:
16  *
17  * The above copyright notice and this permission notice shall be
18  * included in all copies or substantial portions of the Software.
19  *
20  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
21  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
22  * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
23  * AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
24  * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
25  * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
26  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
27  * OTHER DEALINGS IN THE SOFTWARE.
28  *
29  * This file is part of EasyGUI library.
30  *
31  * Author: Tilen Majerle <tilen@majerle.eu>
32  */
33 #ifndef GUI_HDR_RADIO_H
34 #define GUI_HDR_RADIO_H
35 
36 /* C++ detection */
37 #ifdef __cplusplus
38 extern "C" {
39 #endif
40 
41 #include "gui_widget.h"
42 
53 typedef enum {
60 
61 gui_handle_p gui_radio_create(gui_id_t id, float x, float y, float width, float height, gui_handle_p parent, gui_widget_evt_fn evt_fn, uint16_t flags);
62 uint8_t gui_radio_setcolor(gui_handle_p h, gui_radio_color_t index, gui_color_t color);
63 uint8_t gui_radio_setgroup(gui_handle_p h, uint8_t groupId);
64 uint8_t gui_radio_getgroup(gui_handle_p h);
65 uint8_t gui_radio_setvalue(gui_handle_p h, uint32_t value);
66 uint32_t gui_radio_getvalue(gui_handle_p h);
67 uint32_t gui_radio_getselectedvalue(gui_handle_p h);
68 uint8_t gui_radio_setdisabled(gui_handle_p h, uint8_t disabled);
69 uint8_t gui_radio_isdisabled(gui_handle_p h);
70 uint8_t gui_radio_setselected(gui_handle_p h);
71 
76 /* C++ detection */
77 #ifdef __cplusplus
78 }
79 #endif
80 
81 #endif /* GUI_HDR_RADIO_H */
uint8_t gui_radio_getgroup(gui_handle_p h)
Get radio group for widget.
Definition: gui_radio.c:298
uint8_t gui_radio_setcolor(gui_handle_p h, gui_radio_color_t index, gui_color_t color)
Set color to specific part of widget.
Definition: gui_radio.c:249
uint8_t(* gui_widget_evt_fn)(gui_handle_p h, gui_widget_evt_t evt, gui_evt_param_t *const param, gui_evt_result_t *const result)
Callback function for widget.
Definition: gui_defs.h:1103
uint8_t gui_radio_isdisabled(gui_handle_p h)
Check if radio is disabled.
Definition: gui_radio.c:378
gui_radio_color_t
List of radio colors.
Definition: gui_radio.h:53
gui_handle_p gui_radio_create(gui_id_t id, float x, float y, float width, float height, gui_handle_p parent, gui_widget_evt_fn evt_fn, uint16_t flags)
Create new radio widget.
Definition: gui_radio.c:237
Definition: gui_radio.h:55
uint8_t gui_radio_setdisabled(gui_handle_p h, uint8_t disabled)
Disable widget to prevent state change.
Definition: gui_radio.c:367
uint32_t gui_radio_getselectedvalue(gui_handle_p h)
Get value of selected widget from widget group.
Definition: gui_radio.c:354
uint8_t gui_radio_setgroup(gui_handle_p h, uint8_t groupId)
Set radio group for widget.
Definition: gui_radio.c:261
uint8_t gui_radio_setvalue(gui_handle_p h, uint32_t value)
Set value for widget when pressed.
Definition: gui_radio.c:311
uint32_t gui_color_t
Definition: gui_defs.h:210
Definition: gui_radio.h:54
Definition: gui_radio.h:58
uint32_t gui_radio_getvalue(gui_handle_p h)
Get value for specific widget.
Definition: gui_radio.c:331
uint8_t gui_radio_setselected(gui_handle_p h)
Set radio widget selected in radio group.
Definition: gui_radio.c:342
Definition: gui_radio.h:56
uint32_t gui_id_t
Definition: gui_defs.h:209
Definition: gui_radio.h:57