41 #if defined(__cplusplus) 60 #define WM_SF_HASTRANS WM_CF_HASTRANS 61 #define WM_SF_MEMDEV WM_CF_MEMDEV 62 #define WM_SF_MEMDEV_ON_REDRAW WM_CF_MEMDEV_ON_REDRAW 63 #define WM_SF_DISABLED WM_CF_DISABLED 64 #define WM_SF_ISVIS WM_CF_SHOW 66 #define WM_SF_STAYONTOP WM_CF_STAYONTOP 67 #define WM_SF_LATE_CLIP WM_CF_LATE_CLIP 68 #define WM_SF_ANCHOR_RIGHT WM_CF_ANCHOR_RIGHT 69 #define WM_SF_ANCHOR_BOTTOM WM_CF_ANCHOR_BOTTOM 70 #define WM_SF_ANCHOR_LEFT WM_CF_ANCHOR_LEFT 71 #define WM_SF_ANCHOR_TOP WM_CF_ANCHOR_TOP 73 #define WM_SF_INVALID WM_CF_ACTIVATE 75 #define WM_SF_CONST_OUTLINE WM_CF_CONST_OUTLINE 77 #define WM_H2P(hWin) ((WM_Obj*)GUI_ALLOC_h2p(hWin)) 80 #if GUI_DEBUG_LEVEL >= GUI_DEBUG_LEVEL_LOG_WARNINGS 81 #define WM_ASSERT_NOT_IN_PAINT() { if (WM__PaintCallbackCnt) \ 82 GUI_DEBUG_ERROROUT("Function may not be called from within a paint event"); \ 85 #define WM_ASSERT_NOT_IN_PAINT() 97 } WM_NOTIFY_CHILD_HAS_FOCUS_INFO;
99 typedef struct WM_CRITICAL_HANDLE {
100 struct WM_CRITICAL_HANDLE * pNext;
101 volatile WM_HWIN hWin;
102 } WM_CRITICAL_HANDLE;
110 extern U32 WM__CreateFlags;
113 extern char WM__CaptureReleaseAuto;
114 extern WM_tfPollPID * WM_pfPollPID;
115 extern U8 WM__PaintCallbackCnt;
116 extern WM_HWIN WM__hCreateStatic;
118 #if WM_SUPPORT_TRANSPARENCY 119 extern int WM__TransWindowCnt;
120 extern WM_HWIN WM__hATransWindow;
124 extern void (*WM__pfShowInvalid)(WM_HWIN hWin);
129 extern int WM__ModalLayer;
131 #if GUI_SUPPORT_MOUSE 138 #define GUI_EXTERN extern 141 #if (GUI_NUM_LAYERS > 1) 143 #define WM__TOUCHED_LAYER WM__TouchedLayer 145 #define WM__TOUCHED_LAYER GUI_CURSOR_LAYER 151 GUI_EXTERN WM_CRITICAL_HANDLE * WM__pFirstCriticalHandle;
164 void WM__ActivateClipRect (
void);
165 int WM__ClipAtParentBorders (
GUI_RECT * pRect, WM_HWIN hWin);
166 void WM__Client2Screen (
const WM_Obj * pWin,
GUI_RECT * pRect);
167 void WM__DeleteAssocTimer (WM_HWIN hWin);
168 void WM__DeleteSecure (WM_HWIN hWin);
169 void WM__DetachWindow (WM_HWIN hChild);
170 void WM__ForEachDesc (WM_HWIN hWin, WM_tfForEach * pcb,
void * pData);
171 void WM__GetClientRectWin (
const WM_Obj * pWin,
GUI_RECT * pRect);
172 void WM__GetClientRectEx (WM_HWIN hWin,
GUI_RECT * pRect);
173 WM_HWIN WM__GetFirstSibling (WM_HWIN hWin);
174 WM_HWIN WM__GetFocussedChild (WM_HWIN hWin);
175 int WM__GetHasFocus (WM_HWIN hWin);
176 WM_HWIN WM__GetLastSibling (WM_HWIN hWin);
177 WM_HWIN WM__GetPrevSibling (WM_HWIN hWin);
178 int WM__GetTopLevelLayer (WM_HWIN hWin);
179 int WM__GetWindowSizeX (
const WM_Obj * pWin);
180 int WM__GetWindowSizeY (
const WM_Obj * pWin);
181 void WM__InsertWindowIntoList (WM_HWIN hWin, WM_HWIN hParent);
182 void WM__Invalidate1Abs (WM_HWIN hWin,
const GUI_RECT * pRect);
183 void WM__InvalidateAreaBelow (
const GUI_RECT * pRect, WM_HWIN StopWin);
184 void WM__InvalidateRectEx (
const GUI_RECT * pInvalidRect, WM_HWIN hParent, WM_HWIN hStop);
185 void WM__InvalidateTransAreaAbove(
const GUI_RECT * pRect, WM_HWIN StopWin);
187 int WM__IsAncestor (WM_HWIN hChild, WM_HWIN hParent);
188 int WM__IsAncestorOrSelf (WM_HWIN hChild, WM_HWIN hParent);
189 int WM__IsChild (WM_HWIN hWin, WM_HWIN hParent);
190 int WM__IsEnabled (WM_HWIN hWin);
191 int WM__IsInModalArea (WM_HWIN hWin);
192 int WM__IsInWindow (WM_Obj * pWin,
int x,
int y);
193 int WM__IsWindow (WM_HWIN hWin);
194 void WM__LeaveIVRSearch (
void);
195 void WM__MoveTo (WM_HWIN hWin,
int x,
int y);
196 void WM__MoveWindow (WM_HWIN hWin,
int dx,
int dy);
197 void WM__NotifyVisChanged (WM_HWIN hWin,
GUI_RECT * pRect);
198 int WM__RectIsNZ (
const GUI_RECT * pr);
199 void WM__RemoveWindowFromList (WM_HWIN hWin);
200 void WM__Screen2Client (
const WM_Obj * pWin,
GUI_RECT * pRect);
201 void WM__SelectTopLevelLayer (WM_HWIN hWin);
202 void WM__SendMsgNoData (WM_HWIN hWin,
U8 MsgId);
203 void WM__SendMessage (WM_HWIN hWin, WM_MESSAGE * pm);
204 void WM__SendMessageIfEnabled (WM_HWIN hWin, WM_MESSAGE * pm);
205 void WM__SendMessageNoPara (WM_HWIN hWin,
int MsgId);
206 void WM__SendPIDMessage (WM_HWIN hWin, WM_MESSAGE * pMsg);
207 int WM__SetScrollbarH (WM_HWIN hWin,
int OnOff);
208 int WM__SetScrollbarV (WM_HWIN hWin,
int OnOff);
209 void WM__UpdateChildPositions (WM_Obj * pObj,
int dx0,
int dy0,
int dx1,
int dy1);
210 void WM_PID__GetPrevState (
GUI_PID_STATE * pPrevState,
int Layer);
211 void WM_PID__SetPrevState (
GUI_PID_STATE * pPrevState,
int Layer);
212 void WM__SendTouchMessage (WM_HWIN hWin, WM_MESSAGE * pMsg);
214 U16 WM_GetFlags (WM_HWIN hWin);
215 int WM__Paint (WM_HWIN hWin);
216 void WM__Paint1 (WM_HWIN hWin);
217 void WM__AddCriticalHandle (WM_CRITICAL_HANDLE * pCH);
218 void WM__RemoveCriticalHandle (WM_CRITICAL_HANDLE * pCH);
219 void WM__SetLastTouched (WM_HWIN hWin);
221 #if WM_SUPPORT_STATIC_MEMDEV 222 void WM__InvalidateDrawAndDescs(WM_HWIN hWin);
224 #define WM__InvalidateDrawAndDescs(hWin) 228 #if (GUI_SUPPORT_MEMDEV) 233 int GUI_MEMDEV__CalcParaFadeIn (
int Period,
int TimeUsed);
234 void GUI_MEMDEV__ClipBK (EFFECT_CONTEXT * pContext);
235 void GUI_MEMDEV__RemoveStaticDevice(WM_HWIN hWin);
236 void GUI_MEMDEV__UndoClipBK (EFFECT_CONTEXT * pContext);
239 void WM__InvalidateParent(
const GUI_RECT * pInvalidRect, WM_HWIN hParent, WM_HWIN hStop);
240 void WM__InvalidateRect (
const GUI_RECT * pInvalidRect, WM_HWIN hParent, WM_HWIN hStop,
U16 Flags);
242 WM_tfInvalidateParent WM__SetInvalidateParentFunc(WM_tfInvalidateParent pfInvalidateParentFunc);
243 WM_tfInvalidateDrawFunc WM__SetInvalidateDrawFunc (WM_tfInvalidateDrawFunc pfInvalidateDrawFunc);
244 WM_tfPaint1Func WM__SetPaint1Func (WM_tfPaint1Func pfPaint1Func);
248 #if defined(__cplusplus)