35#ifndef __VSF_TGUI_CONTROLS_PANEL_H__
36#define __VSF_TGUI_CONTROLS_PANEL_H__
48#if defined(__VSF_TGUI_CONTROLS_PANEL_CLASS_IMPLEMENT)
49# define __PLOOC_CLASS_IMPLEMENT__
50# undef __VSF_TGUI_CONTROLS_PANEL_CLASS_IMPLEMENT
51#elif defined(__VSF_TGUI_CONTROLS_PANEL_CLASS_INHERIT)
52# define __PLOOC_CLASS_INHERIT__
53# undef __VSF_TGUI_CONTROLS_PANEL_CLASS_INHERIT
60# define __VSF_TGUI_INTERFACE_CONTROLS_PANEL { \
62 VSF_MSGT_NODE_HANDLER_TYPE_FSM, \
63 (vsf_msgt_method_fsm_t *)&vsf_tgui_panel_msg_handler, \
65 .Status = (vsf_msgt_method_status_t *) \
66 &vsf_tgui_control_status_get, \
67 .Shoot = (vsf_msgt_method_shoot_t *)&vsf_tgui_control_shoot, \
72#define __tgui_set_internal_panel( __OWNER_ADDR, \
76 (*__OWNER_ADDR) tgui_panel( \
83#define tgui_set_internal_panel( __OWNER_ADDR, \
87 __tgui_set_internal_panel( (__OWNER_ADDR), \
94#define tgui_set_priv_panel( __OWNER_ADDR , \
97 __tgui_set_internal_panel( (__OWNER_ADDR), \
104#define __declare_tgui_panel(__NAME) \
105 typedef struct __NAME __NAME;
106#define declare_tgui_panel(__NAME) __declare_tgui_panel(__NAME)
108#define __def_tgui_panel_ex(__NAME, __VAR_NAME, ...) \
109 typedef struct __NAME { \
110 implement(vsf_tgui_panel_t) \
113 vsf_msgt_node_t __VAR_NAME##_FirstNode ; \
119#define def_tgui_panel(__NAME, ...) \
120 __def_tgui_panel_ex(__NAME, __NAME, __VA_ARGS__)
121#define def_tgui_panel_ex(__NAME, __VAR_NAME, ...) \
122 __def_tgui_panel_ex(__NAME, __VAR_NAME, __VA_ARGS__)
124#define end_def_tgui_panel(__NAME) \
127#define __describ_tgui_panel(__TYPE, __NAME, ...) \
128 describe_tgui_container_base( \
130 VSF_TGUI_COMPONENT_ID_PANEL, \
132 VSF_TGUI_V_PANEL_STATIC_INIT_DEFAULT \
134 VSF_TGUI_V_PANEL_STATIC_INIT_OVERRIDE \
139#define describ_tgui_panel(__NAME, __VAR, ...) \
140 __describ_tgui_panel(__NAME, __VAR, __VA_ARGS__)
142#define __use_tgui_panel(__NAME, ...) \
144 implement(vsf_tgui_panel_t) \
147 vsf_msgt_node_t __NAME##_FirstNode ; \
154#define use_tgui_panel(__NAME, ...) __use_tgui_panel(__NAME, ##__VA_ARGS__)
157#define __tgui_panel(__NAME, __PARENT_ADDR, __PREVIOUS, __NEXT, ...) \
158 tgui_container_base( \
160 VSF_TGUI_COMPONENT_ID_PANEL, \
165 VSF_TGUI_V_PANEL_STATIC_INIT_DEFAULT \
167 VSF_TGUI_V_PANEL_STATIC_INIT_OVERRIDE \
171#define tgui_panel(__NAME, __PARENT_ADDR, __PREVIOUS, __NEXT, ...) \
172 __tgui_panel( __NAME, \
185 implement(vsf_tgui_v_panel_t)
#define ENABLED
Definition __type.h:28
Definition vsf_tgui_common.h:552
Definition vsf_tgui_common.h:365
fsm_rt_t
Definition vsf_fsm.h:315
def_class(vsf_stream_fifo_t, which(vsf_stream_tx_t TX;vsf_stream_rx_t RX;), private:vsf_slist_queue_t union { vsf_stream_fifo_cfg_t cfg;struct { vsf_stream_dat_rdy_evt_t tDataReadyEventHandling;vsf_stream_dat_drn_evt_t tDataDrainEventHandling;vsf_stream_status_t Status;#if !defined(VSF_PBUF_QUEUE_CFG_ATOM_ACCESS) vsf_protect_region_t *pregion;#endif };};) end_def_class(vsf_stream_fifo_t) extern vsf_err_t vsf_stream_fifo_init(vsf_stream_fifo_t *obj_ptr
#define VSF_TGUI_CFG_PANEL_HAS_LABEL
Definition vsf_tgui_cfg.h:237
struct vsf_tgui_root_container_t vsf_tgui_root_container_t
Definition vsf_tgui_common.h:550
which(union { inherit(vsf_msgt_container_t) vsf_tgui_control_t };vsf_tgui_v_container_t) implement_ex(struct
Definition vsf_tgui_control.h:562
which(vsf_tgui_control_t vsf_tgui_v_label_t) public vsf_tgui_msg_t * ptMSG
Definition vsf_tgui_label.h:157
fsm_rt_t vk_tgui_panel_init(vsf_tgui_panel_t *ptPanel)
Definition vsf_tgui_panel.c:102
fsm_rt_t vsf_tgui_panel_msg_handler(vsf_tgui_panel_t *control_ptr, vsf_tgui_msg_t *ptMSG)
Definition vsf_tgui_panel.c:75
end_def_class(vsf_tgui_panel_t) extern fsm_rt_t vk_tgui_panel_init(vsf_tgui_panel_t *ptPanel)
vsf_tgui_label_t tTitleLabel
Definition vsf_tgui_panel.h:183
declare_class(vsf_tgui_panel_t) def_class(vsf_tgui_panel_t
fsm_rt_t vk_tgui_panel_update(vsf_tgui_panel_t *ptPanel)
Definition vsf_tgui_panel.c:83
const vsf_tgui_control_t * control_ptr
Definition vsf_tgui_scguiv_port.h:87