XenevaOS
Loading...
Searching...
No Matches
toolbar.h
Go to the documentation of this file.
1
29#ifndef __TOOLBAR_H__
30#define __TOOLBAR_H__
31
32#include "window.h"
33#include <_xeneva.h>
34#include "base.h"
35#include "icon.h"
36
44
45#define TOOLBAR_STATE_NORMAL 0
46#define TOOLBAR_STATE_HOVER 1
47#define TOOLBAR_STATE_PRESSED 2
48#define TOOLBAR_STATE_ACTIVE 3
49#define TOOLBAR_STATE_DISABLED 4
50
55
56#define TOOLBAR_MAX_ITEMS 64
57#define TOOLBAR_BTN_PADDING 6
58#define TOOLBAR_SEP_THICKNESS 1
59#define TOOLBAR_SEP_MARGIN 4
60#define TOOLBAR_OVERFLOW_BTN_SZ 14
61
62
63#ifdef __cplusplus
65#endif
66
88
119
120
121XE_EXPORT ChToolbar* ChToolbarCreate(int x, int y, int w, int h, uint8_t orientation);
122XE_EXPORT int ChToolbarAddButton(ChToolbar* tb, ChIcon* icon, int iw, int ih,
123 const char* tooltip, void* ud);
124
125XE_EXPORT int ChToolbarAddToggle(ChToolbar* tb, ChIcon* icon, int iw, int ih,
126 const char* tooltip, void* ud);
127XE_EXPORT int ChToolbarAddRadio(ChToolbar* tb, ChIcon* icon, int iw, int ih, const char* tooltip,
128 uint8_t groupID, void* ud);
130XE_EXPORT int ChToolbarAddWidget(ChToolbar* tb, ChWidget* child, int childW, int childH);
131XE_EXPORT void ChToolbarSetEnabled(ChToolbar* tb, int index, int enabled);
132XE_EXPORT void ChToolbarSetActive(ChToolbar* tb, int index, int active);
133
134
135#ifdef __cplusplus
136}
137#endif
138
139#endif
#define index(str, chr)
Definition string.h:66
#define XE_EXPORT
Definition _xeneva.h:46
#define XE_EXTERN
Definition _xeneva.h:50
unsigned int uint32_t
Definition acefiex.h:163
unsigned char uint8_t
Definition acefiex.h:161
ChTextBox * tb
Definition ctrl.cpp:93
Definition window.h:115
Definition icon.h:57
Definition toolbar.h:89
ChToolBarItem items[TOOLBAR_MAX_ITEMS]
Definition toolbar.h:92
int viewportLength
Definition toolbar.h:100
uint32_t color_btn_pressed
Definition toolbar.h:111
int contentLength
Definition toolbar.h:99
uint32_t color_bg
Definition toolbar.h:109
uint32_t color_btn_hover
Definition toolbar.h:110
uint32_t color_separator
Definition toolbar.h:114
int buttonPadding
Definition toolbar.h:96
uint32_t color_btn_active
Definition toolbar.h:112
int item_count
Definition toolbar.h:93
int scrollOffset
Definition toolbar.h:98
uint32_t color_overflow_arrow
Definition toolbar.h:115
uint8_t show_overflow
Definition toolbar.h:106
int pressedIndex
Definition toolbar.h:103
uint8_t orientation
Definition toolbar.h:95
int overflow_btn_pos
Definition toolbar.h:107
uint8_t prevButton
Definition toolbar.h:104
void(* onItemStateChange)(struct _toolbar_ *tb, int index)
Definition toolbar.h:117
ChWidget base
Definition toolbar.h:90
int hoverIndex
Definition toolbar.h:102
uint32_t color_btn_disabled
Definition toolbar.h:113
Definition toolbar.h:67
int iconH
Definition toolbar.h:72
void * userData
Definition toolbar.h:86
int offset
Definition toolbar.h:83
ChIcon * icon
Definition toolbar.h:70
uint8_t active
Definition toolbar.h:77
int iconW
Definition toolbar.h:71
uint8_t groupID
Definition toolbar.h:76
int child_w
Definition toolbar.h:80
int child_h
Definition toolbar.h:81
uint8_t state
Definition toolbar.h:69
int extent
Definition toolbar.h:84
ChWidget * child
Definition toolbar.h:79
char tooltip[48]
Definition toolbar.h:74
uint8_t type
Definition toolbar.h:68
XE_EXPORT ChToolbar * ChToolbarCreate(int x, int y, int w, int h, uint8_t orientation)
Definition toolbar.cpp:107
XE_EXPORT int ChToolbarAddWidget(ChToolbar *tb, ChWidget *child, int childW, int childH)
Definition toolbar.cpp:184
_titemType_
Definition toolbar.h:37
@ TOOLBAR_ITEM_BUTTON
Definition toolbar.h:38
@ TOOLBAR_ITEM_TOGGLE
Definition toolbar.h:39
@ TOOLBAR_ITEM_WIDGET
Definition toolbar.h:42
@ TOOLBAR_ITEM_RADIO
Definition toolbar.h:40
@ TOOLBAR_ITEM_SEPARATOR
Definition toolbar.h:41
enum _toolbar_orientation_ ChToolbarOrientation
XE_EXPORT int ChToolbarAddRadio(ChToolbar *tb, ChIcon *icon, int iw, int ih, const char *tooltip, uint8_t groupID, void *ud)
Definition toolbar.cpp:166
struct _toolbar_ ChToolbar
enum _titemType_ ToolBarItemType
#define TOOLBAR_MAX_ITEMS
Definition toolbar.h:56
XE_EXPORT int ChToolbarAddToggle(ChToolbar *tb, ChIcon *icon, int iw, int ih, const char *tooltip, void *ud)
Definition toolbar.cpp:159
XE_EXPORT void ChToolbarSetEnabled(ChToolbar *tb, int index, int enabled)
Definition toolbar.cpp:196
XE_EXPORT void ChToolbarSetActive(ChToolbar *tb, int index, int active)
Definition toolbar.cpp:201
_toolbar_orientation_
Definition toolbar.h:51
@ TOOLBAR_VERTICAL
Definition toolbar.h:53
@ TOOLBAR_HORIZONTAL
Definition toolbar.h:52
struct _toolbar_item_ ChToolBarItem
XE_EXPORT int ChToolbarAddButton(ChToolbar *tb, ChIcon *icon, int iw, int ih, const char *tooltip, void *ud)
Definition toolbar.cpp:144
XE_EXPORT int ChToolbarAddSeparator(ChToolbar *tb)
Definition toolbar.cpp:176