Select one of the symbols to view example projects that use it.
 
Outline
#define WIDGET_H
#include "WM_Intern.h"
WIDGET_ITEM_DRAW_INFO
WIDGET_SKIN
#include "SCROLLBAR.h"
#define BUTTON_ID
#define CHECKBOX_ID
#define DROPDOWN_ID
#define EDIT_ID
#define FRAMEWIN_ID
#define FRAMECLNT_ID
#define GRAPH_ID
#define HEADER_ID
#define LISTBOX_ID
#define LISTVIEW_ID
#define LISTWHEEL_ID
#define MENU_ID
#define MULTIEDIT_ID
#define MULTIPAGE_ID
#define MPAGECLNT_ID
#define PROGBAR_ID
#define RADIO_ID
#define SCROLLBAR_ID
#define SLIDER_ID
#define SWIPELIST_ID
#define TEXT_ID
#define TREEVIEW_ID
#define ICONVIEW_ID
#define IMAGE_ID
#define SPINBOX_ID
#define KNOB_ID
#define WINDOW_ID
#define WIDGET_LOCK
#define WIDGET_USE_PARENT_EFFECT
#define WIDGET_USE_FLEX_SKIN
#define WIDGET_USE_SCHEME_SMALL
#define WIDGET_USE_SCHEME_MEDIUM
#define WIDGET_USE_SCHEME_LARGE
#define WIDGET_USE_SCHEME_SMALL
#define WIDGET_USE_SCHEME_MEDIUM
#define WIDGET_USE_SCHEME_LARGE
#define WIDGET_STATE_FOCUS
#define WIDGET_STATE_VERTICAL
#define WIDGET_STATE_FOCUSABLE
#define WIDGET_STATE_USER0
#define WIDGET_STATE_USER1
#define WIDGET_STATE_USER2
#define WIDGET_STATE_FOCUSSABLE
#define WIDGET_ITEM_CREATE
#define WIDGET_ITEM_DRAW
#define WIDGET_ITEM_DRAW_ARROW
#define WIDGET_ITEM_DRAW_ARROW_L
#define WIDGET_ITEM_DRAW_ARROW_R
#define WIDGET_ITEM_DRAW_BACKGROUND
#define WIDGET_ITEM_DRAW_BITMAP
#define WIDGET_ITEM_DRAW_BUTTON
#define WIDGET_ITEM_DRAW_BUTTON_L
#define WIDGET_ITEM_DRAW_BUTTON_R
#define WIDGET_ITEM_DRAW_FOCUS
#define WIDGET_ITEM_DRAW_FRAME
#define WIDGET_ITEM_DRAW_OVERLAP
#define WIDGET_ITEM_DRAW_OVERLAY
#define WIDGET_ITEM_DRAW_SEP
#define WIDGET_ITEM_DRAW_SHAFT
#define WIDGET_ITEM_DRAW_SHAFT_L
#define WIDGET_ITEM_DRAW_SHAFT_R
#define WIDGET_ITEM_DRAW_TEXT
#define WIDGET_ITEM_DRAW_THUMB
#define WIDGET_ITEM_DRAW_TICKS
#define WIDGET_ITEM_GET_BORDERSIZE_B
#define WIDGET_ITEM_GET_BORDERSIZE_L
#define WIDGET_ITEM_GET_BORDERSIZE_R
#define WIDGET_ITEM_GET_BORDERSIZE_T
#define WIDGET_ITEM_GET_BUTTONSIZE
#define WIDGET_ITEM_GET_XSIZE
#define WIDGET_ITEM_GET_YSIZE
#define WIDGET_ITEM_GET_RADIUS
#define WIDGET_ITEM_APPLY_PROPS
#define WIDGET_DRAW_BACKGROUND
#define WIDGET_DRAW_OVERLAY
#define WM_WIDGET_SET_EFFECT
#define WIDGET_CF_VERTICAL
WIDGET_EFFECT
WIDGET
GUI_DRAW
GUI_DRAW_HANDLE
GUI_DRAW_CONSTS
GUI_DRAW
GUI_DRAW__Draw(GUI_DRAW_HANDLE, GUI_HWIN, int, int);
GUI_DRAW__GetXSize(GUI_DRAW_HANDLE);
GUI_DRAW__GetYSize(GUI_DRAW_HANDLE);
GUI_DrawStreamedEnableAuto();
GUI_DRAW_BITMAP_Create(const GUI_BITMAP *, int, int);
GUI_DRAW_BMP_Create(const void *, int, int);
GUI_DRAW_STREAMED_Create(const GUI_BITMAP_STREAM *, int, int);
GUI_DRAW_SELF_Create(GUI_DRAW_SELF_CB *, int, int);
WIDGET_Effect_3D;
WIDGET_Effect_3D1L;
WIDGET_Effect_3D2L;
WIDGET_Effect_None;
WIDGET_Effect_Simple;
WIDGET__DrawFocusRect(WIDGET *, const GUI_RECT *, int);
WIDGET__DrawHLine(WIDGET *, int, int, int);
WIDGET__DrawTriangle(WIDGET *, int, int, int, int);
WIDGET__DrawVLine(WIDGET *, int, int, int);
WIDGET__EFFECT_DrawDownRect(WIDGET *, GUI_RECT *);
WIDGET__EFFECT_DrawDown(WIDGET *);
WIDGET__EFFECT_DrawUpRect(WIDGET *, GUI_RECT *);
WIDGET__FillRectEx(WIDGET *, const GUI_RECT *);
WIDGET__GetWindowSizeX(GUI_HWIN);
WIDGET__GetBkColor(GUI_HWIN);
WIDGET__GetXSize(const WIDGET *);
WIDGET__GetYSize(const WIDGET *);
WIDGET__GetClientRect(WIDGET *, GUI_RECT *);
WIDGET__GetInsideRect(WIDGET *, GUI_RECT *);
WIDGET__Init(WIDGET *, int, unsigned short);
WIDGET__RotateRect90(WIDGET *, GUI_RECT *, const GUI_RECT *);
WIDGET__SetScrollState(GUI_HWIN, const WM_SCROLL_STATE *, const WM_SCROLL_STATE *);
WIDGET__FillStringInRect(const char *, const GUI_RECT *, const GUI_RECT *, const GUI_RECT *);
GUI__pfDrawStreamedBitmap;
GUI__pfDrawStreamedBitmapEx;
WIDGET_SetState(GUI_HWIN, int);
WIDGET_AndState(GUI_HWIN, int);
WIDGET_OrState(GUI_HWIN, int);
WIDGET_HandleActive(GUI_HWIN, WM_MESSAGE *);
WIDGET_GetState(GUI_HWIN);
WIDGET_SetWidth(GUI_HWIN, int);
WIDGET_SetFocusable(GUI_HWIN, int);
WIDGET_EFFECT_3D_DrawUp();
WIDGET_SetDefaultEffect(const WIDGET_EFFECT *);
WIDGET_SetEffect(GUI_HWIN, const WIDGET_EFFECT *);
WIDGET_GetDefaultEffect();
WIDGET_EFFECT_3D_SetColor(unsigned int, GUI_COLOR);
WIDGET_EFFECT_3D1L_SetColor(unsigned int, GUI_COLOR);
WIDGET_EFFECT_3D2L_SetColor(unsigned int, GUI_COLOR);
WIDGET_EFFECT_Simple_SetColor(unsigned int, GUI_COLOR);
WIDGET_EFFECT_3D_GetColor(unsigned int);
WIDGET_EFFECT_3D1L_GetColor(unsigned int);
WIDGET_EFFECT_3D2L_GetColor(unsigned int);
WIDGET_EFFECT_Simple_GetColor(unsigned int);
WIDGET_EFFECT_3D_GetNumColors();
WIDGET_EFFECT_3D1L_GetNumColors();
WIDGET_EFFECT_3D2L_GetNumColors();
WIDGET_EFFECT_Simple_GetNumColors();
#define WIDGET_EnableStreamAuto
#define WIDGET_SetDefaultEffect_3D
#define WIDGET_SetDefaultEffect_3D1L
#define WIDGET_SetDefaultEffect_3D2L
#define WIDGET_SetDefaultEffect_None
#define WIDGET_SetDefaultEffect_Simple
Files
loading...
SourceVuSTM32 Libraries and SamplesSTemWininc/WIDGET.h
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
/********************************************************************* * SEGGER Microcontroller GmbH & Co. KG * * Solutions for real time microcontroller applications * ********************************************************************** * * * (c) 1996 - 2017 SEGGER Microcontroller GmbH & Co. KG * * * * Internet: www.segger.com Support: support@segger.com * * * ********************************************************************** ** emWin V5.44 - Graphical user interface for embedded applications ** All Intellectual Property rights in the Software belongs to SEGGER. emWin is protected by international copyright laws. Knowledge of the source code may not be used to write a similar product. This file may only be used in accordance with the following terms: The software has been licensed to STMicroelectronics International N.V. a Dutch company with a Swiss branch and its headquarters in Plan- les-Ouates, Geneva, 39 Chemin du Champ des Filles, Switzerland for the purposes of creating libraries for ARM Cortex-M-based 32-bit microcon_ troller products commercialized by Licensee only, sublicensed and dis_ tributed under the terms and conditions of the End User License Agree_ ment supplied by STMicroelectronics International N.V. Full source code is available at: www.segger.com We appreciate your understanding and fairness. ---------------------------------------------------------------------- ****************************************************************************** * @attention * * <h2><center>&copy; Copyright (c) 2018 STMicroelectronics. * All rights reserved.</center></h2> * * This software component is licensed by ST under Ultimate Liberty license SLA0044, * the "License"; You may not use this file except in compliance with the License. * You may obtain a copy of the License at: * http://www.st.com/SLA0044 * ****************************************************************************** ---------------------------------------------------------------------- File : WIDGET.h Purpose : Widget interface ---------------------------END-OF-HEADER------------------------------ *//* ... */ #ifndef WIDGET_H /* Avoid multiple inclusion */ #define WIDGET_H #if defined(__cplusplus) extern "C" { /* Make sure we have C-declarations in C++ programs */ #endif #include "WM_Intern.h" /* Window manager, including some internals, which speed things up */ #if GUI_WINSUPPORT /********************************************************************* * * Typedefs * ********************************************************************** *//* ... */ typedef struct { WM_HWIN hWin; int Cmd; /* WIDGET_ITEM_GET_XSIZE, WIDGET_ITEM_GET_YSIZE, WIDGET_ITEM_DRAW, */ int ItemIndex; int Col; int x0, y0, x1, y1; void * p; ...} WIDGET_ITEM_DRAW_INFO; typedef int WIDGET_DRAW_ITEM_FUNC(const WIDGET_ITEM_DRAW_INFO * pDrawItemInfo); typedef void WIDGET_PAINT (WM_HWIN hObj); typedef void WIDGET_CREATE (WM_HWIN hObj); typedef struct { WIDGET_PAINT * pfPaint; WIDGET_CREATE * pfCreate; void * pSkinPrivate; ...} WIDGET_SKIN; /********************************************************************* * * Important: WIDGET_DRAW_ITEM_FUNC needs to be defined * in SCROLLBAR.h! * ********************************************************************** *//* ... */ #include "SCROLLBAR.h" /********************************************************************* * * Defines * ********************************************************************** *//* ... */ /********************************************************************* * * Unique widget id's *//* ... */ #define BUTTON_ID 0x42555454UL /* BUTT */ #define CHECKBOX_ID 0x43484543UL /* CHEC */ #define DROPDOWN_ID 0x44524f50UL /* DROP */ #define EDIT_ID 0x45444954UL /* EDIT */ #define FRAMEWIN_ID 0x4652414dUL /* FRAM */ #define FRAMECLNT_ID 0x46524143UL /* FRAC */ #define GRAPH_ID 0x47524150UL /* GRAP */ #define HEADER_ID 0x48454144UL /* HEAD */ #define LISTBOX_ID 0x4C495342UL /* LISB */ #define LISTVIEW_ID 0x4C495356UL /* LISV */ #define LISTWHEEL_ID 0x4C495357UL /* LISW */ #define MENU_ID 0x4d454e55UL /* MENU */ #define MULTIEDIT_ID 0x4d554c45UL /* MULE */ #define MULTIPAGE_ID 0x4d554c50UL /* MULP */ #define MPAGECLNT_ID 0x4d50434CUL /* MPCL */ #define PROGBAR_ID 0x50524f47UL /* PROG */ #define RADIO_ID 0x52414449UL /* RADI */ #define SCROLLBAR_ID 0x5343524fUL /* SCRO */ #define SLIDER_ID 0x534c4944UL /* SLID */ #define SWIPELIST_ID 0x53574950UL /* SWIP */ #define TEXT_ID 0x54455854UL /* TEXT */ #define TREEVIEW_ID 0x54524545UL /* TREE */ #define ICONVIEW_ID 0x49434f4eUL /* ICON */ #define IMAGE_ID 0x494d4147UL /* IMAG */ #define SPINBOX_ID 0x5350494eUL /* SPIN */ #define KNOB_ID 0x4b4e4f42UL /* KNOB */ #define WINDOW_ID 0x57494e44UL /* WIND */ #define WIDGET_LOCK(hWin) ((WIDGET*)GUI_LOCK_H(hWin)) 28 defines /********************************************************************* * * Config switches *//* ... */ #ifndef WIDGET_USE_PARENT_EFFECT #define WIDGET_USE_PARENT_EFFECT 0 #endif #ifndef WIDGET_USE_FLEX_SKIN #define WIDGET_USE_FLEX_SKIN 1 #endif #if !defined(WIDGET_USE_SCHEME_SMALL) && !defined(WIDGET_USE_SCHEME_MEDIUM) && !defined(WIDGET_USE_SCHEME_LARGE) #define WIDGET_USE_SCHEME_SMALL 1 #define WIDGET_USE_SCHEME_MEDIUM 0 #define WIDGET_USE_SCHEME_LARGE 0 /* ... */#endif #ifndef WIDGET_USE_SCHEME_SMALL #define WIDGET_USE_SCHEME_SMALL 0 #endif #ifndef WIDGET_USE_SCHEME_MEDIUM #define WIDGET_USE_SCHEME_MEDIUM 0 #endif #ifndef WIDGET_USE_SCHEME_LARGE #define WIDGET_USE_SCHEME_LARGE 0 #endif #if (WIDGET_USE_SCHEME_SMALL + WIDGET_USE_SCHEME_MEDIUM + WIDGET_USE_SCHEME_LARGE) > 1 #error Only one scheme can be selected! #endif /********************************************************************* * * States *//* ... */ #define WIDGET_STATE_FOCUS (1 << 0) #define WIDGET_STATE_VERTICAL (1 << 3) #define WIDGET_STATE_FOCUSABLE (1 << 4) #define WIDGET_STATE_USER0 (1 << 8) /* Freely available for derived widget */ #define WIDGET_STATE_USER1 (1 << 9) /* Freely available for derived widget */ #define WIDGET_STATE_USER2 (1 << 10) /* Freely available for derived widget */ #define WIDGET_STATE_FOCUSSABLE WIDGET_STATE_FOCUSABLE /********************************************************************* * * Skinning message identifiers *//* ... */ #define WIDGET_ITEM_CREATE 0 #define WIDGET_ITEM_DRAW 1 #define WIDGET_ITEM_DRAW_ARROW 2 #define WIDGET_ITEM_DRAW_ARROW_L 3 #define WIDGET_ITEM_DRAW_ARROW_R 4 #define WIDGET_ITEM_DRAW_BACKGROUND 5 #define WIDGET_ITEM_DRAW_BITMAP 6 #define WIDGET_ITEM_DRAW_BUTTON 7 #define WIDGET_ITEM_DRAW_BUTTON_L 8 #define WIDGET_ITEM_DRAW_BUTTON_R 9 #define WIDGET_ITEM_DRAW_FOCUS 10 #define WIDGET_ITEM_DRAW_FRAME 11 #define WIDGET_ITEM_DRAW_OVERLAP 12 #define WIDGET_ITEM_DRAW_OVERLAY 13 #define WIDGET_ITEM_DRAW_SEP 14 #define WIDGET_ITEM_DRAW_SHAFT 15 #define WIDGET_ITEM_DRAW_SHAFT_L 16 #define WIDGET_ITEM_DRAW_SHAFT_R 17 #define WIDGET_ITEM_DRAW_TEXT 18 #define WIDGET_ITEM_DRAW_THUMB 19 #define WIDGET_ITEM_DRAW_TICKS 20 #define WIDGET_ITEM_GET_BORDERSIZE_B 21 #define WIDGET_ITEM_GET_BORDERSIZE_L 22 #define WIDGET_ITEM_GET_BORDERSIZE_R 23 #define WIDGET_ITEM_GET_BORDERSIZE_T 24 #define WIDGET_ITEM_GET_BUTTONSIZE 25 #define WIDGET_ITEM_GET_XSIZE 26 #define WIDGET_ITEM_GET_YSIZE 27 #define WIDGET_ITEM_GET_RADIUS 28 #define WIDGET_ITEM_APPLY_PROPS 29 // Not to be documented. Use this message identifier to update the // properties of attached widgets from <WIDGET>_DrawSkinFlex(). #define WIDGET_DRAW_BACKGROUND 30 #define WIDGET_DRAW_OVERLAY WIDGET_ITEM_DRAW_OVERLAY /********************************************************************* * * Messages *//* ... */ #define WM_WIDGET_SET_EFFECT (WM_WIDGET + 0) /********************************************************************* * * Create flags *//* ... */ #define WIDGET_CF_VERTICAL WIDGET_STATE_VERTICAL 41 defines /********************************************************************* * * Widget object * * The widget object is the base class for most widgets *//* ... */ typedef struct { int EffectSize; void (* pfDrawUp) (void); void (* pfDrawUpRect) (const GUI_RECT * pRect); void (* pfDrawDown) (void); void (* pfDrawDownRect)(const GUI_RECT * pRect); void (* pfDrawFlat) (void); void (* pfDrawFlatRect)(const GUI_RECT * pRect); ...} WIDGET_EFFECT; typedef struct { WM_Obj Win; const WIDGET_EFFECT* pEffect; I16 Id; U16 State; #if GUI_DEBUG_LEVEL > 1 U32 DebugId; #endif ...} WIDGET; /********************************************************************* * * GUI_DRAW * * The GUI_DRAW object is used as base class for selfdrawing, * non-windows objects. They are used as content of different widgets, * such as the bitmap or header widgets. *//* ... */ /* Declare Object struct */ typedef struct GUI_DRAW GUI_DRAW; typedef void GUI_DRAW_SELF_CB (WM_HWIN hWin); typedef WM_HMEM GUI_DRAW_HANDLE; /* Declare Object constants (member functions etc) */ typedef struct { void (* pfDraw) (GUI_DRAW_HANDLE hDrawObj, WM_HWIN hObj, int x, int y); int (* pfGetXSize)(GUI_DRAW_HANDLE hDrawObj); int (* pfGetYSize)(GUI_DRAW_HANDLE hDrawObj); ...} GUI_DRAW_CONSTS; /* Declare Object */ struct GUI_DRAW { const GUI_DRAW_CONSTS* pConsts; union { const void * pData; GUI_DRAW_SELF_CB* pfDraw; ...} Data; I16 xOff, yOff; ...}; /* GUI_DRAW_ API */ void GUI_DRAW__Draw (GUI_DRAW_HANDLE hDrawObj, WM_HWIN hObj, int x, int y); int GUI_DRAW__GetXSize(GUI_DRAW_HANDLE hDrawObj); int GUI_DRAW__GetYSize(GUI_DRAW_HANDLE hDrawObj); void GUI_DrawStreamedEnableAuto(void); /* GUI_DRAW_ Constructurs for different objects */ WM_HMEM GUI_DRAW_BITMAP_Create (const GUI_BITMAP* pBitmap, int x, int y); WM_HMEM GUI_DRAW_BMP_Create (const void* pBMP, int x, int y); WM_HMEM GUI_DRAW_STREAMED_Create(const GUI_BITMAP_STREAM * pBitmap, int x, int y); WM_HMEM GUI_DRAW_SELF_Create(GUI_DRAW_SELF_CB* pfDraw, int x, int y); /********************************************************************* * * Global data * ********************************************************************** *//* ... */ extern const WIDGET_EFFECT WIDGET_Effect_3D; extern const WIDGET_EFFECT WIDGET_Effect_3D1L; extern const WIDGET_EFFECT WIDGET_Effect_3D2L; extern const WIDGET_EFFECT WIDGET_Effect_None; extern const WIDGET_EFFECT WIDGET_Effect_Simple; /********************************************************************* * * Internal API routines * ********************************************************************** *//* ... */ void WIDGET__DrawFocusRect (WIDGET * pWidget, const GUI_RECT * pRect, int Dist); void WIDGET__DrawHLine (WIDGET * pWidget, int y, int x0, int x1); void WIDGET__DrawTriangle (WIDGET * pWidget, int x, int y, int Size, int Inc); void WIDGET__DrawVLine (WIDGET * pWidget, int x, int y0, int y1); void WIDGET__EFFECT_DrawDownRect(WIDGET * pWidget, GUI_RECT * pRect); void WIDGET__EFFECT_DrawDown (WIDGET * pWidget); void WIDGET__EFFECT_DrawUpRect (WIDGET * pWidget, GUI_RECT * pRect); void WIDGET__FillRectEx (WIDGET * pWidget, const GUI_RECT * pRect); int WIDGET__GetWindowSizeX (WM_HWIN hWin); GUI_COLOR WIDGET__GetBkColor (WM_HWIN hObj); int WIDGET__GetXSize (const WIDGET * pWidget); int WIDGET__GetYSize (const WIDGET * pWidget); void WIDGET__GetClientRect (WIDGET * pWidget, GUI_RECT * pRect); void WIDGET__GetInsideRect (WIDGET * pWidget, GUI_RECT * pRect); void WIDGET__Init (WIDGET * pWidget, int Id, U16 State); void WIDGET__RotateRect90 (WIDGET * pWidget, GUI_RECT * pDest, const GUI_RECT * pRect); void WIDGET__SetScrollState (WM_HWIN hWin, const WM_SCROLL_STATE * pVState, const WM_SCROLL_STATE * pState); void WIDGET__FillStringInRect (const char * pText, const GUI_RECT * pFillRect, const GUI_RECT * pTextRectMax, const GUI_RECT * pTextRectAct); // // Function pointers for drawing streamed bitmaps // extern void (* GUI__pfDrawStreamedBitmap) (const void * p, int x, int y); extern int (* GUI__pfDrawStreamedBitmapEx)(GUI_GET_DATA_FUNC * pfGetData, const void * p, int x, int y); /********************************************************************* * * API routines * ********************************************************************** *//* ... */ void WIDGET_SetState (WM_HWIN hObj, int State); void WIDGET_AndState (WM_HWIN hObj, int State); void WIDGET_OrState (WM_HWIN hObj, int State); int WIDGET_HandleActive (WM_HWIN hObj, WM_MESSAGE* pMsg); int WIDGET_GetState (WM_HWIN hObj); int WIDGET_SetWidth (WM_HWIN hObj, int Width); void WIDGET_SetFocusable (WM_HWIN hObj, int State); void WIDGET_EFFECT_3D_DrawUp(void); const WIDGET_EFFECT* WIDGET_SetDefaultEffect(const WIDGET_EFFECT* pEffect); void WIDGET_SetEffect (WM_HWIN hObj, const WIDGET_EFFECT* pEffect); const WIDGET_EFFECT* WIDGET_GetDefaultEffect(void); void WIDGET_EFFECT_3D_SetColor (unsigned Index, GUI_COLOR Color); void WIDGET_EFFECT_3D1L_SetColor (unsigned Index, GUI_COLOR Color); void WIDGET_EFFECT_3D2L_SetColor (unsigned Index, GUI_COLOR Color); void WIDGET_EFFECT_Simple_SetColor(unsigned Index, GUI_COLOR Color); GUI_COLOR WIDGET_EFFECT_3D_GetColor (unsigned Index); GUI_COLOR WIDGET_EFFECT_3D1L_GetColor (unsigned Index); GUI_COLOR WIDGET_EFFECT_3D2L_GetColor (unsigned Index); GUI_COLOR WIDGET_EFFECT_Simple_GetColor(unsigned Index); int WIDGET_EFFECT_3D_GetNumColors(void); int WIDGET_EFFECT_3D1L_GetNumColors(void); int WIDGET_EFFECT_3D2L_GetNumColors(void); int WIDGET_EFFECT_Simple_GetNumColors(void); /********************************************************************* * * Compatibility macros * ********************************************************************** *//* ... */ #define WIDGET_EnableStreamAuto() GUI_DrawStreamedEnableAuto() #define WIDGET_SetDefaultEffect_3D() WIDGET_SetDefaultEffect(&WIDGET_Effect_3D) #define WIDGET_SetDefaultEffect_3D1L() WIDGET_SetDefaultEffect(&WIDGET_Effect_3D1L) #define WIDGET_SetDefaultEffect_3D2L() WIDGET_SetDefaultEffect(&WIDGET_Effect_3D2L) #define WIDGET_SetDefaultEffect_None() WIDGET_SetDefaultEffect(&WIDGET_Effect_None) #define WIDGET_SetDefaultEffect_Simple() WIDGET_SetDefaultEffect(&WIDGET_Effect_Simple) 6 defines /* ... */#endif /* GUI_WINSUPPORT */ #if defined(__cplusplus) }extern "C" { ... } #endif /* ... */ #endif /* SLIDER_H */ /*************************** End of file ****************************/
Details
Show:
from
Types: Columns:
This file uses the notable symbols shown below. Click anywhere in the file to view more details.