46 #ifndef __D4D_GROUP_BOX_H
47 #define __D4D_GROUP_BOX_H
69 #define D4D_GROUP_BOX_F_CONTENT_OUTLINE (0x01 << D4D_OBJECT_F_OBJECT_SHIFT)
76 #ifndef D4D_GROUP_BOX_F_DEFAULT
77 #define D4D_GROUP_BOX_F_DEFAULT (D4D_OBJECT_F_VISIBLE | D4D_OBJECT_F_ENABLED | D4D_OBJECT_F_MOUSE_NORMAL | D4D_OBJECT_F_TOUCHENABLE | D4D_OBJECT_F_BEVEL_RAISED | D4D_GROUP_BOX_F_CONTENT_OUTLINE)
82 #ifndef D4D_GROUP_BOX_TEXT_OFFSET
83 #define D4D_GROUP_BOX_TEXT_OFFSET 6
88 #ifndef D4D_GROUP_BOX_HEADER_MARGIN
89 #define D4D_GROUP_BOX_HEADER_MARGIN 16
94 #ifndef D4D_GROUP_BOX_FRAME_MARGIN
95 #define D4D_GROUP_BOX_FRAME_MARGIN 4
117 #define D4D_GET_GROUP_BOX(pObj) ((D4D_GROUP_BOX*)((pObj)->pParam))
148 #define _D4D_DECLARE_GROUP_BOX(type, name, x, y, cx, cy, radius, pMargin, pRelations, text, fontId, flags, pScheme, pUser, pOnUsrMsg) \
149 static D4D_STR_PROPERTIES name##_strPrties = { D4D_FNT_PRTY_TRANSPARENT_NO_MASK, (D4D_TXT_PRTY_ALIGN_H_CENTER_MASK | D4D_TXT_PRTY_ALIGN_V_CENTER_MASK)}; \
150 static type D4D_GROUP_BOX name##_params = \
152 { text, sizeof(text), fontId, &name##_strPrties, D4D_OBJECT_MAX_TEXT_LEN(text), 0}, \
155 D4D_DECLARE_OBJECT(type, name, x, y, cx, cy, radius, pMargin, pRelations, pOnUsrMsg, &d4d_groupBoxSysFunc, &(name##_params), flags, pUser, pScheme)
190 #define D4D_DECLARE_GROUP_BOX_BEGIN(name, x, y, cx, cy, radius, pParent, pMargin, text, fontId, flags, pScheme, pUser, pOnUsrMsg)\
191 extern const D4D_OBJECT* const name##_pRelations[];\
192 _D4D_DECLARE_GROUP_BOX(D4D_CONST, name, x, y, cx, cy, radius, pMargin, name##_pRelations, text, fontId, flags, pScheme, pUser, pOnUsrMsg)\
193 D4D_DECLARE_OBJECT_RELATIONS_BEGIN(name##_pRelations, pParent)
208 #define D4D_DECLARE_GROUP_BOX_OBJECT(name) D4D_DECLARE_OBJECT_RELATIONS_CHILD(name)
222 #define D4D_DECLARE_GROUP_BOX_OBJECT_END D4D_DECLARE_OBJECT_RELATIONS_END
250 #define D4D_DECLARE_STD_GROUP_BOX_BEGIN(name, x, y, cx, cy, radius, pParent, text, fontId) \
251 D4D_DECLARE_GROUP_BOX_BEGIN(name, x, y, cx, cy, radius, pParent, &groupBox_marginDefault, text, fontId, (D4D_GROUP_BOX_F_DEFAULT), NULL, NULL, NULL)
258 #define D4D_DECLARE_GROUP_BOX_BEGIN_INRAM(name, x, y, cx, cy, radius, pParent, pMargin, text, fontId, flags, pScheme, pUser, pOnUsrMsg)\
259 extern const D4D_OBJECT* const name##_pRelations[];\
260 _D4D_DECLARE_GROUP_BOX(D4D_NO_CONST, name, x, y, cx, cy, radius, pMargin, name##_pRelations, text, fontId, flags, pScheme, pUser, pOnUsrMsg)\
261 D4D_DECLARE_OBJECT_RELATIONS_BEGIN(name##_pRelations, pParent)
266 #define D4D_DECLARE_STD_GROUP_BOX_BEGIN_INRAM(name, x, y, cx, cy, radius, pParent, text, fontId) \
267 D4D_DECLARE_GROUP_BOX_BEGIN_INRAM(name, x, y, cx, cy, radius, pParent, &groupBox_marginDefault, text, fontId, (D4D_GROUP_BOX_F_DEFAULT), NULL, NULL, NULL)
The string type. This structure contains all properties about string in eGUI.
const D4D_OBJECT_SYS_FUNCTION d4d_groupBoxSysFunc
D4D_MARGIN groupBox_marginDefault
The object system function needed for each object - this is part of D4D_OBJECT main structure...
Type definition of eGUI client area margin structure.