]> git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/wince/missing.h
removed wxMotif::wxMenuItem::DeleteSubMenu()
[wxWidgets.git] / include / wx / msw / wince / missing.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wince/missing.h
3 // Purpose: Missing things in WinCE
4 // Author: Marco Cavallini
5 // Modified by:
6 // Created: 16/11/2002
7 // RCS-ID:
8 // Copyright: (c) KOAN SAS ( www.koansoftware.com )
9 // Licence: wxWindows licence
10 ///////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_CE_MISSING_H_
13 #define _WX_CE_MISSING_H_
14
15 #include "wx/msw/private.h"
16 #include "shellapi.h"
17
18 inline BOOL IsIconic( HWND hWnd )
19 {
20 // Probably not right...
21 #if 0
22 long style = GetWindowLong(hWnd, GWL_STYLE);
23 return ((style & WS_MINIMIZE) == 0);
24 #endif
25 return FALSE;
26 }
27
28 #ifdef WIN32_PLATFORM_PSPC
29 #define SM_CXCURSOR 13
30 #define SM_CYCURSOR 14
31 #endif
32
33 // Missing from eVC 4 for some reason
34 #ifndef I_IMAGENONE
35 #define I_IMAGENONE (-2)
36 #endif
37
38 #ifndef TBSTYLE_NO_DROPDOWN_ARROW
39 #define TBSTYLE_NO_DROPDOWN_ARROW 0x0080
40 #endif
41
42 #if _WIN32_WCE >= 400
43 // aygshell.h missing from eVC 4 for some reason
44 #define SHCMBM_GETMENU (WM_USER + 402)
45 #define SHCMBM_SETSUBMENU (WM_USER + 400) // wparam == id of button, lParam == hmenu, return is old hmenu
46 #define SHCMBM_GETSUBMENU (WM_USER + 401) // lParam == ID
47 #define SHCMBM_GETMENU (WM_USER + 402) // get the owning hmenu (as specified in the load resource)
48
49 #define SHIDIF_DONEBUTTON 0x0001
50 #define SHIDIF_SIZEDLG 0x0002
51 #define SHIDIF_SIZEDLGFULLSCREEN 0x0004
52 #define SHIDIF_SIPDOWN 0x0008
53 #define SHIDIF_FULLSCREENNOMENUBAR 0x0010
54 #define SHIDIF_EMPTYMENU 0x0020
55
56 #define SHFS_SHOWTASKBAR 0x0001
57 #define SHFS_HIDETASKBAR 0x0002
58 #define SHFS_SHOWSIPBUTTON 0x0004
59 #define SHFS_HIDESIPBUTTON 0x0008
60 #define SHFS_SHOWSTARTICON 0x0010
61 #define SHFS_HIDESTARTICON 0x0020
62
63 typedef struct tagSHMENUBARINFO
64 {
65 DWORD cbSize; // IN - Indicates which members of struct are valid
66 HWND hwndParent; // IN
67 DWORD dwFlags; // IN - Some features we want
68 UINT nToolBarId; // IN - Which toolbar are we using
69 HINSTANCE hInstRes; // IN - Instance that owns the resources
70 int nBmpId;
71 int cBmpImages; // IN - Count of bitmap images
72 HWND hwndMB; // OUT
73 COLORREF clrBk; // IN - background color of the menu bar (excluding sip)
74 } SHMENUBARINFO, *PSHMENUBARINFO;
75
76 #ifdef __cplusplus
77 extern "C" {
78 #endif
79
80 BOOL SHFullScreen(HWND hwndRequester, DWORD dwState);
81
82 WINSHELLAPI BOOL SHCreateMenuBar(SHMENUBARINFO *pmbi);
83
84 #ifdef __cplusplus
85 }
86 #endif
87
88 #endif
89
90 /*
91 Most of these are in MSVC++6.0 <wx\wince\winuser.h>
92 see also <wx\msw\gnuwin32\winresrc.h>
93 */
94
95 // ----------------------------------------------------------------------------
96 // Used in msgdlg.cpp, evtloop.cpp
97 // ----------------------------------------------------------------------------
98
99 #ifndef MB_TASKMODAL
100 #define MB_TASKMODAL 0x2000
101 #endif
102
103 ////////////////////////////////////////////////////////
104
105 // JACS: I've commented these out in order to start from
106 // scratch. I don't think we should simply add styles,
107 // classes etc. when we don't know if they're supported
108 // by WinCE libraries.
109
110 #if 0
111
112 /*
113 * Extended Window Styles
114 */
115 #define WS_EX_DLGMODALFRAME 0x00000001L
116 #define WS_EX_NOPARENTNOTIFY 0x00000004L
117 #define WS_EX_TOPMOST 0x00000008L
118 #define WS_EX_ACCEPTFILES 0x00000010L
119 #define WS_EX_TRANSPARENT 0x00000020L
120
121 #define WS_EX_MDICHILD 0x00000040L
122 #define WS_EX_TOOLWINDOW 0x00000080L
123 #define WS_EX_WINDOWEDGE 0x00000100L
124 #define WS_EX_CLIENTEDGE 0x00000200L
125 #define WS_EX_CONTEXTHELP 0x00000400L
126
127 #define WS_EX_RIGHT 0x00001000L
128 #define WS_EX_LEFT 0x00000000L
129 #define WS_EX_RTLREADING 0x00002000L
130 #define WS_EX_LTRREADING 0x00000000L
131 #define WS_EX_LEFTSCROLLBAR 0x00004000L
132 #define WS_EX_RIGHTSCROLLBAR 0x00000000L
133
134 #define WS_EX_CONTROLPARENT 0x00010000L
135 #define WS_EX_STATICEDGE 0x00020000L
136 #define WS_EX_APPWINDOW 0x00040000L
137
138
139 #define WS_EX_OVERLAPPEDWINDOW (WS_EX_WINDOWEDGE | WS_EX_CLIENTEDGE)
140 #define WS_EX_PALETTEWINDOW (WS_EX_WINDOWEDGE | WS_EX_TOOLWINDOW | WS_EX_TOPMOST)
141
142
143 /*
144 * Flags for TrackPopupMenu
145 */
146 #define TPM_LEFTBUTTON 0x0000L
147 #define TPM_RIGHTBUTTON 0x0002L
148 #define TPM_LEFTALIGN 0x0000L
149 #define TPM_CENTERALIGN 0x0004L
150 #define TPM_RIGHTALIGN 0x0008L
151
152 #define TPM_TOPALIGN 0x0000L
153 #define TPM_VCENTERALIGN 0x0010L
154 #define TPM_BOTTOMALIGN 0x0020L
155
156 #define TPM_HORIZONTAL 0x0000L /* Horz alignment matters more */
157 #define TPM_VERTICAL 0x0040L /* Vert alignment matters more */
158 #define TPM_NONOTIFY 0x0080L /* Don't send any notification msgs */
159 #define TPM_RETURNCMD 0x0100L
160
161 #define TPM_RECURSE 0x0001L
162
163
164
165 ////////////////////////////////////////////////////////
166 // Missing declarations into WinCE include files (MCK)
167 ////////////////////////////////////////////////////////
168
169 HCURSOR WINAPI
170 DestroyCursor(HCURSOR hCursor);
171
172 HCURSOR WINAPI
173 CreateCursor(HINSTANCE hInst,
174 int xHotSpot,
175 int yHotSpot,
176 int nWidth,
177 int nHeight,
178 CONST VOID *pvANDPlane,
179 CONST VOID *pvXORPlane );
180
181 ////////////////////////////////////////////////////////
182
183 int WINAPI
184 GetScrollPos(
185 HWND hWnd,
186 int nBar);
187
188 bool WINAPI
189 GetScrollRange(
190 HWND hWnd,
191 int nBar,
192 LPINT lpMinPos,
193 LPINT lpMaxPos);
194
195 bool WINAPI
196 ScrollWindow(
197 HWND hWnd,
198 int XAmount,
199 int YAmount,
200 CONST RECT *lpRect,
201 CONST RECT *lpClipRect);
202
203 LRESULT WINAPI
204 CallWindowProcA(
205 WNDPROC lpPrevWndFunc,
206 HWND hWnd,
207 UINT Msg,
208 WPARAM wParam,
209 LPARAM lParam);
210
211 LRESULT WINAPI
212 CallWindowProcW(
213 WNDPROC lpPrevWndFunc,
214 HWND hWnd,
215 UINT Msg,
216 WPARAM wParam,
217 LPARAM lParam);
218
219 #ifdef UNICODE
220 #define CallWindowProc CallWindowProcW
221 #else
222 #define CallWindowProc CallWindowProcA
223 #endif // !UNICODE
224
225 #endif
226 // 0
227
228 ////////////////////////////////////////////////////////
229
230 #endif // _WX_CE_MISSING_H_