]> git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/wince/missing.h
fix crash when reading malformed PCX images (#3836)
[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 WXUNUSED(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 __POCKETPC__
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 #ifndef SHCMBM_GETMENU
43 #define SHCMBM_GETMENU (WM_USER + 402)
44 #endif
45
46 #ifndef SHCMBM_SETSUBMENU
47 #define SHCMBM_SETSUBMENU (WM_USER + 400) // wparam == id of button, lParam == hmenu, return is old hmenu
48 #endif
49
50 #ifndef SHCMBM_GETSUBMENU
51 #define SHCMBM_GETSUBMENU (WM_USER + 401) // lParam == ID
52 #endif
53
54 #ifndef LVS_EX_FULLROWSELECT
55 #define LVS_EX_FULLROWSELECT 0x00000020
56 #endif
57
58 #ifndef TVS_FULLROWSELECT
59 #define TVS_FULLROWSELECT 0x1000
60 #endif
61
62 #ifndef TVM_SETBKCOLOR
63 #define TVM_SETBKCOLOR (TV_FIRST + 29)
64 #define TVM_SETTEXTCOLOR (TV_FIRST + 30)
65 #endif
66
67 // Used in msgdlg.cpp, evtloop.cpp
68 #ifndef MB_TASKMODAL
69 #define MB_TASKMODAL 0x2000
70 #endif
71
72 #ifndef HGDI_ERROR
73 #define HGDI_ERROR ((HANDLE)(0xFFFFFFFFL))
74 #endif
75
76 // some windows styles don't exist in CE SDK, replace them with closest
77 // equivalents
78 #ifndef WS_THICKFRAME
79 #define WS_THICKFRAME WS_BORDER
80 #endif
81
82 #ifndef WS_MINIMIZE
83 #define WS_MINIMIZE 0
84 #endif
85
86 #ifndef WS_MAXIMIZE
87 #define WS_MAXIMIZE 0
88 #endif
89
90
91 // global memory functions don't exist under CE (good riddance, of course, but
92 // the existing code still uses them in some places, so make it compile)
93 //
94 // update: they're defined in eVC 4 inside "#ifdef UNDER_CE" block
95 #ifndef UNDER_CE
96 #define GlobalAlloc LocalAlloc
97 #define GlobalFree LocalFree
98 #define GlobalSize LocalSize
99 #define GPTR LPTR
100 #define GHND LPTR
101 #define GMEM_MOVEABLE 0
102 #define GMEM_SHARE 0
103 #endif // !UNDER_CE
104
105 // WinCE RTL doesn't implement bsearch() used in encconv.cpp
106 extern "C" void *
107 bsearch(const void *key, const void *base, size_t num, size_t size,
108 int (wxCMPFUNC_CONV *cmp)(const void *, const void *));
109
110 #define O_RDONLY 0x0000 /* open for reading only */
111 #define O_WRONLY 0x0001 /* open for writing only */
112 #define O_RDWR 0x0002 /* open for reading and writing */
113 #define O_APPEND 0x0008 /* writes done at eof */
114
115 #define O_CREAT 0x0100 /* create and open file */
116 #define O_TRUNC 0x0200 /* open and truncate */
117 #define O_EXCL 0x0400 /* open only if file doesn't already exist */
118
119 #define O_TEXT 0x4000 /* file mode is text (translated) */
120 #define O_BINARY 0x8000 /* file mode is binary (untranslated) */
121
122 #ifndef SS_SUNKEN
123 #define SS_SUNKEN 0x00001000L
124 #endif
125
126 // unsupported flags for WINDOWPOS structure
127 #ifndef SWP_NOCOPYBITS
128 #define SWP_NOCOPYBITS 0
129 #endif
130
131 #ifndef SWP_NOOWNERZORDER
132 #define SWP_NOOWNERZORDER 0
133 #endif
134
135 #ifndef SWP_NOSENDCHANGING
136 #define SWP_NOSENDCHANGING 0
137 #endif
138
139 #endif // _WX_CE_MISSING_H_
140