]> git.saurik.com Git - wxWidgets.git/blame - include/wx/msw/wince/missing.h
Added some missing STL-like wxArray/wxArrayString constructors.
[wxWidgets.git] / include / wx / msw / wince / missing.h
CommitLineData
1a4fe894
JS
1/////////////////////////////////////////////////////////////////////////////
2// Name: wince/missing.h
504de6d1 3// Purpose: Missing things in WinCE
1a4fe894
JS
4// Author: Marco Cavallini
5// Modified by:
6// Created: 16/11/2002
7// RCS-ID:
8// Copyright: (c) KOAN SAS ( www.koansoftware.com )
371a5b4e
JS
9// Licence: wxWindows licence
10///////////////////////////////////////////////////////////////////////////////
1a4fe894
JS
11
12#ifndef _WX_CE_MISSING_H_
13#define _WX_CE_MISSING_H_
14
504de6d1
JS
15#include "wx/msw/private.h"
16#include "shellapi.h"
17
eae4425d 18inline BOOL IsIconic( HWND hWnd )
7f0586ef
JS
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}
1a4fe894 27
eae4425d
JS
28#ifdef WIN32_PLATFORM_PSPC
29#define SM_CXCURSOR 13
30#define SM_CYCURSOR 14
31#endif
1a4fe894 32
504de6d1
JS
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
63typedef 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
77extern "C" {
78#endif
79
80BOOL SHFullScreen(HWND hwndRequester, DWORD dwState);
81
82WINSHELLAPI BOOL SHCreateMenuBar(SHMENUBARINFO *pmbi);
83
84#ifdef __cplusplus
85}
86#endif
87
88#endif
89
1a4fe894
JS
90/*
91Most of these are in MSVC++6.0 <wx\wince\winuser.h>
92see also <wx\msw\gnuwin32\winresrc.h>
93*/
676d6550
JS
94
95// ----------------------------------------------------------------------------
96// Used in msgdlg.cpp, evtloop.cpp
97// ----------------------------------------------------------------------------
98
99#ifndef MB_TASKMODAL
100#define MB_TASKMODAL 0x2000
101#endif
102
1a4fe894
JS
103////////////////////////////////////////////////////////
104
7f0586ef
JS
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
1a4fe894
JS
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
169HCURSOR WINAPI
170DestroyCursor(HCURSOR hCursor);
171
172HCURSOR WINAPI
173CreateCursor(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
183int WINAPI
184GetScrollPos(
185 HWND hWnd,
186 int nBar);
187
188bool WINAPI
189GetScrollRange(
190 HWND hWnd,
191 int nBar,
192 LPINT lpMinPos,
193 LPINT lpMaxPos);
194
195bool WINAPI
196ScrollWindow(
197 HWND hWnd,
198 int XAmount,
199 int YAmount,
200 CONST RECT *lpRect,
201 CONST RECT *lpClipRect);
202
203LRESULT WINAPI
204CallWindowProcA(
205 WNDPROC lpPrevWndFunc,
206 HWND hWnd,
207 UINT Msg,
208 WPARAM wParam,
209 LPARAM lParam);
210
211LRESULT WINAPI
212CallWindowProcW(
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
7f0586ef 225#endif
676d6550 226 // 0
7f0586ef 227
1a4fe894
JS
228////////////////////////////////////////////////////////
229
230#endif // _WX_CE_MISSING_H_