Mercurial > dwindows
annotate dw.h @ 358:526642f70ddd
Prefix all internally used data with _dw_ to avoid conflicts with user
data set with dw_window_set_data().
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Sun, 20 Apr 2003 13:16:32 +0000 |
parents | 2216e65ad2ae |
children | 39983df2b93d |
rev | line source |
---|---|
3 | 1 /* $Id$ */ |
2 | |
3 #ifndef _H_DW | |
4 #define _H_DW | |
5 | |
15
81833f25b1aa
Added new Dynamic Windows build information to the DWEnv struct.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
14
diff
changeset
|
6 /* Dynamic Windows version numbers */ |
146
add6b46310c2
Upped DW's revision to 1.0.0. This is the final API specification for
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
140
diff
changeset
|
7 #define DW_MAJOR_VERSION 1 |
add6b46310c2
Upped DW's revision to 1.0.0. This is the final API specification for
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
140
diff
changeset
|
8 #define DW_MINOR_VERSION 0 |
15
81833f25b1aa
Added new Dynamic Windows build information to the DWEnv struct.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
14
diff
changeset
|
9 #define DW_SUB_VERSION 0 |
81833f25b1aa
Added new Dynamic Windows build information to the DWEnv struct.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
14
diff
changeset
|
10 |
224
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
11 /* These corespond to the entries in the color |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
12 * arrays in the Win32 dw.c, they are also the |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
13 * same as DOS ANSI colors. |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
14 */ |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
15 #define DW_CLR_BLACK 0 |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
16 #define DW_CLR_DARKRED 1 |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
17 #define DW_CLR_DARKGREEN 2 |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
18 #define DW_CLR_BROWN 3 |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
19 #define DW_CLR_DARKBLUE 4 |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
20 #define DW_CLR_DARKPINK 5 |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
21 #define DW_CLR_DARKCYAN 6 |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
22 #define DW_CLR_PALEGRAY 7 |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
23 #define DW_CLR_DARKGRAY 8 |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
24 #define DW_CLR_RED 9 |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
25 #define DW_CLR_GREEN 10 |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
26 #define DW_CLR_YELLOW 11 |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
27 #define DW_CLR_BLUE 12 |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
28 #define DW_CLR_PINK 13 |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
29 #define DW_CLR_CYAN 14 |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
30 #define DW_CLR_WHITE 15 |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
31 #define DW_CLR_DEFAULT 16 |
e6571c4e4d3b
Use the same DW_CLR_* values on all platforms including OS/2... so I
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
204
diff
changeset
|
32 |
306
9d13efce2894
Minor OS/2 cleanup. Added #defines for the signals, instead of using the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
302
diff
changeset
|
33 /* Signal handler defines */ |
9d13efce2894
Minor OS/2 cleanup. Added #defines for the signals, instead of using the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
302
diff
changeset
|
34 #define DW_SIGNAL_CONFIGURE "configure_event" |
9d13efce2894
Minor OS/2 cleanup. Added #defines for the signals, instead of using the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
302
diff
changeset
|
35 #define DW_SIGNAL_KEY_PRESS "key_press_event" |
9d13efce2894
Minor OS/2 cleanup. Added #defines for the signals, instead of using the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
302
diff
changeset
|
36 #define DW_SIGNAL_BUTTON_PRESS "button_press_event" |
9d13efce2894
Minor OS/2 cleanup. Added #defines for the signals, instead of using the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
302
diff
changeset
|
37 #define DW_SIGNAL_BUTTON_RELEASE "button_release_event" |
9d13efce2894
Minor OS/2 cleanup. Added #defines for the signals, instead of using the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
302
diff
changeset
|
38 #define DW_SIGNAL_MOTION_NOTIFY "motion_notify_event" |
9d13efce2894
Minor OS/2 cleanup. Added #defines for the signals, instead of using the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
302
diff
changeset
|
39 #define DW_SIGNAL_DELETE "delete_event" |
9d13efce2894
Minor OS/2 cleanup. Added #defines for the signals, instead of using the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
302
diff
changeset
|
40 #define DW_SIGNAL_EXPOSE "expose_event" |
9d13efce2894
Minor OS/2 cleanup. Added #defines for the signals, instead of using the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
302
diff
changeset
|
41 #define DW_SIGNAL_CLICKED "clicked" |
9d13efce2894
Minor OS/2 cleanup. Added #defines for the signals, instead of using the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
302
diff
changeset
|
42 #define DW_SIGNAL_ITEM_ENTER "container-select" |
9d13efce2894
Minor OS/2 cleanup. Added #defines for the signals, instead of using the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
302
diff
changeset
|
43 #define DW_SIGNAL_ITEM_CONTEXT "container-context" |
9d13efce2894
Minor OS/2 cleanup. Added #defines for the signals, instead of using the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
302
diff
changeset
|
44 #define DW_SIGNAL_ITEM_SELECT "tree-select" |
9d13efce2894
Minor OS/2 cleanup. Added #defines for the signals, instead of using the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
302
diff
changeset
|
45 #define DW_SIGNAL_LIST_SELECT "item-select" |
9d13efce2894
Minor OS/2 cleanup. Added #defines for the signals, instead of using the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
302
diff
changeset
|
46 #define DW_SIGNAL_SET_FOCUS "set-focus" |
9d13efce2894
Minor OS/2 cleanup. Added #defines for the signals, instead of using the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
302
diff
changeset
|
47 #define DW_SIGNAL_VALUE_CHANGED "value_changed" |
330
b87afd126cb7
Add switch-page signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
328
diff
changeset
|
48 #define DW_SIGNAL_SWITCH_PAGE "switch-page" |
306
9d13efce2894
Minor OS/2 cleanup. Added #defines for the signals, instead of using the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
302
diff
changeset
|
49 |
3 | 50 #if defined(__OS2__) || defined(__WIN32__) || defined(WINNT) || defined(__EMX__) |
51 /* OS/2 or Windows */ | |
52 | |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
53 #if defined(__IBMC__) && !defined(API) |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
54 #define API _System |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
55 #endif |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
56 |
3 | 57 /* Used internally */ |
58 #define TYPEBOX 0 | |
59 #define TYPEITEM 1 | |
60 | |
61 #define SIZESTATIC 0 | |
62 #define SIZEEXPAND 1 | |
63 | |
182
b8caec82a4d2
Minor splitbar fixes on OS/2 and Windows. The splitbar width is now 4
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
177
diff
changeset
|
64 #define SPLITBAR_WIDTH 4 |
3 | 65 #define BUBBLE_HELP_MAX 256 |
66 | |
90
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
67 typedef struct _user_data |
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
68 { |
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
69 struct _user_data *next; |
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
70 void *data; |
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
71 char *varname; |
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
72 } UserData; |
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
73 |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
74 /* OS/2 Specific section */ |
3 | 75 #if defined(__OS2__) || defined(__EMX__) |
76 #define INCL_DOS | |
77 #define INCL_WIN | |
78 #define INCL_GPI | |
79 | |
80 #include <os2.h> | |
81 | |
82 #define DW_DT_LEFT DT_LEFT | |
83 #define DW_DT_QUERYEXTENT DT_QUERYEXTENT | |
84 #define DW_DT_UNDERSCORE DT_UNDERSCORE | |
85 #define DW_DT_STRIKEOUT DT_STRIKEOUT | |
86 #define DW_DT_TEXTATTRS DT_TEXTATTRS | |
87 #define DW_DT_EXTERNALLEADING DT_EXTERNALLEADING | |
88 #define DW_DT_CENTER DT_CENTER | |
89 #define DW_DT_RIGHT DT_RIGHT | |
90 #define DW_DT_TOP DT_TOP | |
91 #define DW_DT_VCENTER DT_VCENTER | |
92 #define DW_DT_BOTTOM DT_BOTTOM | |
93 #define DW_DT_HALFTONE DT_HALFTONE | |
94 #define DW_DT_MNEMONIC DT_MNEMONIC | |
95 #define DW_DT_WORDBREAK DT_WORDBREAK | |
96 #define DW_DT_ERASERECT DT_ERASERECT | |
97 | |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
98 #ifndef FCF_CLOSEBUTTON |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
99 #define FCF_CLOSEBUTTON 0x04000000L |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
100 #endif |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
101 |
3 | 102 #define DW_FCF_TITLEBAR FCF_TITLEBAR |
113
553f3b4f8b5b
Added the CLOSEBUTTON flag to the SYSMENU flag on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
90
diff
changeset
|
103 #define DW_FCF_SYSMENU (FCF_SYSMENU | FCF_CLOSEBUTTON) |
3 | 104 #define DW_FCF_MENU FCF_MENU |
105 #define DW_FCF_SIZEBORDER FCF_SIZEBORDER | |
106 #define DW_FCF_MINBUTTON FCF_MINBUTTON | |
107 #define DW_FCF_MAXBUTTON FCF_MAXBUTTON | |
108 #define DW_FCF_MINMAX FCF_MINMAX | |
109 #define DW_FCF_VERTSCROLL FCF_VERTSCROLL | |
110 #define DW_FCF_HORZSCROLL FCF_HORZSCROLL | |
111 #define DW_FCF_DLGBORDER FCF_DLGBORDER | |
112 #define DW_FCF_BORDER FCF_BORDER | |
113 #define DW_FCF_SHELLPOSITION FCF_SHELLPOSITION | |
114 #define DW_FCF_TASKLIST FCF_TASKLIST | |
115 #define DW_FCF_NOBYTEALIGN FCF_NOBYTEALIGN | |
116 #define DW_FCF_NOMOVEWITHOWNER FCF_NOMOVEWITHOWNER | |
117 #define DW_FCF_SYSMODAL FCF_SYSMODAL | |
118 #define DW_FCF_HIDEBUTTON FCF_HIDEBUTTON | |
119 #define DW_FCF_HIDEMAX FCF_HIDEMAX | |
120 #define DW_FCF_AUTOICON FCF_AUTOICON | |
121 | |
122 #define DW_CFA_BITMAPORICON CFA_BITMAPORICON | |
123 #define DW_CFA_STRING CFA_STRING | |
124 #define DW_CFA_ULONG CFA_ULONG | |
125 #define DW_CFA_TIME CFA_TIME | |
126 #define DW_CFA_DATE CFA_DATE | |
127 #define DW_CFA_CENTER CFA_CENTER | |
128 #define DW_CFA_LEFT CFA_LEFT | |
129 #define DW_CFA_RIGHT CFA_RIGHT | |
130 #define DW_CFA_HORZSEPARATOR CFA_HORZSEPARATOR | |
131 #define DW_CFA_SEPARATOR CFA_SEPARATOR | |
132 | |
69
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
133 #define DW_CRA_SELECTED CRA_SELECTED |
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
134 #define DW_CRA_CURSORED CRA_CURSORED |
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
135 |
3 | 136 #define DW_LS_MULTIPLESEL LS_MULTIPLESEL |
137 | |
138 #define DW_LIT_NONE -1 | |
139 | |
140 #define DW_MLE_CASESENSITIVE MLFSEARCH_CASESENSITIVE | |
141 | |
22
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
142 #define DW_POINTER_ARROW SPTR_ARROW |
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
143 #define DW_POINTER_CLOCK SPTR_WAIT |
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
144 |
60
61869769c050
Sync with the latest DW code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
54
diff
changeset
|
145 #define DW_OS2_NEW_WINDOW 1 |
61869769c050
Sync with the latest DW code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
54
diff
changeset
|
146 |
300
4559a2fd2db2
Keypress handler fixes, more need to be done, because I screwed up and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
283
diff
changeset
|
147 /* Virtual Key Codes */ |
4559a2fd2db2
Keypress handler fixes, more need to be done, because I screwed up and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
283
diff
changeset
|
148 #define VK_LBUTTON VK_BUTTON1 |
4559a2fd2db2
Keypress handler fixes, more need to be done, because I screwed up and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
283
diff
changeset
|
149 #define VK_RBUTTON VK_BUTTON2 |
4559a2fd2db2
Keypress handler fixes, more need to be done, because I screwed up and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
283
diff
changeset
|
150 #define VK_MBUTTON VK_BUTTON3 |
4559a2fd2db2
Keypress handler fixes, more need to be done, because I screwed up and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
283
diff
changeset
|
151 #define VK_RETURN VK_NEWLINE |
302
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
152 #define VK_SNAPSHOT VK_PRINTSCRN |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
153 #define VK_CANCEL VK_BREAK |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
154 #define VK_CAPITAL VK_CAPSLOCK |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
155 #define VK_ESCAPE VK_ESC |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
156 #define VK_PRIOR VK_PAGEUP |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
157 #define VK_NEXT VK_PAGEDOWN |
300
4559a2fd2db2
Keypress handler fixes, more need to be done, because I screwed up and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
283
diff
changeset
|
158 #define VK_SELECT 133 |
4559a2fd2db2
Keypress handler fixes, more need to be done, because I screwed up and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
283
diff
changeset
|
159 #define VK_EXECUTE 134 |
302
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
160 #define VK_PRINT 135 |
300
4559a2fd2db2
Keypress handler fixes, more need to be done, because I screwed up and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
283
diff
changeset
|
161 #define VK_HELP 136 |
4559a2fd2db2
Keypress handler fixes, more need to be done, because I screwed up and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
283
diff
changeset
|
162 #define VK_LWIN 137 |
4559a2fd2db2
Keypress handler fixes, more need to be done, because I screwed up and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
283
diff
changeset
|
163 #define VK_RWIN 138 |
302
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
164 #define VK_MULTIPLY ('*' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
165 #define VK_ADD ('+' + 128) |
300
4559a2fd2db2
Keypress handler fixes, more need to be done, because I screwed up and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
283
diff
changeset
|
166 #define VK_SEPARATOR 141 |
302
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
167 #define VK_SUBTRACT ('-' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
168 #define VK_DECIMAL ('.' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
169 #define VK_DIVIDE ('/' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
170 #define VK_SCROLL VK_SCRLLOCK |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
171 #define VK_LSHIFT VK_SHIFT |
300
4559a2fd2db2
Keypress handler fixes, more need to be done, because I screwed up and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
283
diff
changeset
|
172 #define VK_RSHIFT 147 |
302
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
173 #define VK_LCONTROL VK_CTRL |
300
4559a2fd2db2
Keypress handler fixes, more need to be done, because I screwed up and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
283
diff
changeset
|
174 #define VK_RCONTROL 149 |
302
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
175 #define VK_NUMPAD0 ('0' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
176 #define VK_NUMPAD1 ('1' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
177 #define VK_NUMPAD2 ('2' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
178 #define VK_NUMPAD3 ('3' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
179 #define VK_NUMPAD4 ('4' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
180 #define VK_NUMPAD5 ('5' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
181 #define VK_NUMPAD6 ('6' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
182 #define VK_NUMPAD7 ('7' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
183 #define VK_NUMPAD8 ('8' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
184 #define VK_NUMPAD9 ('9' + 128) |
300
4559a2fd2db2
Keypress handler fixes, more need to be done, because I screwed up and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
283
diff
changeset
|
185 |
4559a2fd2db2
Keypress handler fixes, more need to be done, because I screwed up and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
283
diff
changeset
|
186 |
40
88c9c7410c22
Lots of fixes and new functions on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
39
diff
changeset
|
187 typedef struct _window_data { |
88c9c7410c22
Lots of fixes and new functions on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
39
diff
changeset
|
188 PFNWP oldproc; |
90
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
189 UserData *root; |
40
88c9c7410c22
Lots of fixes and new functions on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
39
diff
changeset
|
190 HWND clickdefault; |
60
61869769c050
Sync with the latest DW code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
54
diff
changeset
|
191 ULONG flags; |
67
ab9b0fa6c66e
Focus fixes and removal of several hack in the OS/2 code base.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
63
diff
changeset
|
192 void *data; |
40
88c9c7410c22
Lots of fixes and new functions on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
39
diff
changeset
|
193 } WindowData; |
88c9c7410c22
Lots of fixes and new functions on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
39
diff
changeset
|
194 |
3 | 195 typedef struct _hpixmap { |
196 unsigned long width, height; | |
197 HDC hdc; | |
198 HPS hps; | |
199 HBITMAP hbm; | |
200 HWND handle; | |
201 } *HPIXMAP; | |
202 | |
328
e00aff2b899e
Tree item handles are now of the type HTREEITEM instead of HWND since they
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
325
diff
changeset
|
203 typedef void *HTREEITEM; |
185
f55677513954
Updated the menu code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
182
diff
changeset
|
204 typedef HWND HMENUI; |
f55677513954
Updated the menu code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
182
diff
changeset
|
205 typedef HMODULE HMOD; |
236
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
206 typedef unsigned short UWORD; |
3 | 207 |
185
f55677513954
Updated the menu code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
182
diff
changeset
|
208 #define DW_NOMENU NULLHANDLE |
157
a07dd2e819f3
Added module support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
155
diff
changeset
|
209 |
3 | 210 extern HAB dwhab; |
211 extern HMQ dwhmq; | |
212 #endif | |
213 | |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
214 /* Windows specific section */ |
3 | 215 #if defined(__WIN32__) || defined(WINNT) |
216 #include <windows.h> | |
217 #include <commctrl.h> | |
218 | |
219 /* Cygwin doesn't seem to have these... */ | |
220 #if defined(__CYGWIN32__) | |
221 #define LVS_EX_GRIDLINES 0x00000001 | |
222 #define LVS_EX_FULLROWSELECT 0x00000020 | |
223 #define LVM_SETEXTENDEDLISTVIEWSTYLE (0x1000 + 54) | |
224 #define ListView_SetExtendedListViewStyle(hwndLV, dw) (DWORD)SendMessage((hwndLV), LVM_SETEXTENDEDLISTVIEWSTYLE, 0, dw) | |
225 #endif | |
226 #ifndef UDM_SETPOS32 | |
227 #define UDM_SETPOS32 (WM_USER+113) | |
228 #endif | |
229 #ifndef UDM_GETPOS32 | |
230 #define UDM_GETPOS32 (WM_USER+114) | |
231 #endif | |
232 | |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
233 #if defined(MSVC) && !defined(API) |
177
e3dd5c765775
Fixes for Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
175
diff
changeset
|
234 #define API _cdecl |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
235 #endif |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
236 |
3 | 237 #define DW_DT_LEFT SS_LEFT |
238 #define DW_DT_QUERYEXTENT 0 | |
239 #define DW_DT_UNDERSCORE 0 | |
240 #define DW_DT_STRIKEOUT 0 | |
241 #define DW_DT_TEXTATTRS 0 | |
242 #define DW_DT_EXTERNALLEADING 0 | |
243 #define DW_DT_CENTER SS_CENTER | |
244 #define DW_DT_RIGHT SS_RIGHT | |
245 #define DW_DT_TOP 0 | |
88
58d8139fe0a2
Added vertical center logic for static text controls on windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
70
diff
changeset
|
246 #define DW_DT_VCENTER SS_NOPREFIX |
3 | 247 #define DW_DT_BOTTOM 0 |
248 #define DW_DT_HALFTONE 0 | |
249 #define DW_DT_MNEMONIC 0 | |
250 #define DW_DT_WORDBREAK 0 | |
251 #define DW_DT_ERASERECT 0 | |
252 | |
253 #define DW_FCF_TITLEBAR WS_CAPTION | |
254 #define DW_FCF_SYSMENU WS_SYSMENU | |
255 #define DW_FCF_MENU 0 | |
256 #define DW_FCF_SIZEBORDER WS_THICKFRAME | |
257 #define DW_FCF_MINBUTTON WS_MINIMIZEBOX | |
258 #define DW_FCF_MAXBUTTON WS_MAXIMIZEBOX | |
259 #define DW_FCF_MINMAX (WS_MINIMIZEBOX|WS_MAXIMIZEBOX) | |
260 #define DW_FCF_VERTSCROLL WS_VSCROLL | |
261 #define DW_FCF_HORZSCROLL WS_HSCROLL | |
262 #define DW_FCF_DLGBORDER WS_DLGFRAME | |
263 #define DW_FCF_BORDER WS_BORDER | |
264 #define DW_FCF_SHELLPOSITION 0 | |
265 #define DW_FCF_TASKLIST WS_VSCROLL | |
266 #define DW_FCF_NOBYTEALIGN 0 | |
267 #define DW_FCF_NOMOVEWITHOWNER 0 | |
268 #define DW_FCF_SYSMODAL 0 | |
269 #define DW_FCF_HIDEBUTTON WS_MINIMIZEBOX | |
270 #define DW_FCF_HIDEMAX 0 | |
271 #define DW_FCF_AUTOICON 0 | |
272 | |
273 #define DW_CFA_BITMAPORICON 1 | |
69
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
274 #define DW_CFA_STRING (1 << 1) |
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
275 #define DW_CFA_ULONG (1 << 2) |
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
276 #define DW_CFA_TIME (1 << 3) |
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
277 #define DW_CFA_DATE (1 << 4) |
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
278 #define DW_CFA_CENTER (1 << 5) |
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
279 #define DW_CFA_LEFT (1 << 6) |
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
280 #define DW_CFA_RIGHT (1 << 7) |
3 | 281 #define DW_CFA_HORZSEPARATOR 0 |
282 #define DW_CFA_SEPARATOR 0 | |
283 | |
69
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
284 #define DW_CRA_SELECTED LVNI_SELECTED |
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
285 #define DW_CRA_CURSORED LVNI_FOCUSED |
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
286 |
3 | 287 #define DW_LS_MULTIPLESEL LBS_MULTIPLESEL |
288 | |
289 #define DW_LIT_NONE -1 | |
290 | |
291 #define DW_MLE_CASESENSITIVE 1 | |
292 | |
22
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
293 #define DW_POINTER_ARROW 32512 |
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
294 #define DW_POINTER_CLOCK 32514 |
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
295 |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
296 /* Key Modifiers */ |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
297 #define KC_CTRL (1) |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
298 #define KC_SHIFT (1 << 1) |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
299 #define KC_ALT (1 << 2) |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
300 |
3 | 301 #define STATICCLASSNAME "STATIC" |
302 #define COMBOBOXCLASSNAME "COMBOBOX" | |
303 #define LISTBOXCLASSNAME "LISTBOX" | |
304 #define BUTTONCLASSNAME "BUTTON" | |
305 #define POPUPMENUCLASSNAME "POPUPMENU" | |
306 #define EDITCLASSNAME "EDIT" | |
307 #define FRAMECLASSNAME "FRAME" | |
204
098ed34d41fb
The basics of the new scrollbar code on Windows, and dw_main_iteration().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
203
diff
changeset
|
308 #define SCROLLBARCLASSNAME "SCROLLBAR" |
3 | 309 |
310 #define ClassName "dynamicwindows" | |
311 #define SplitbarClassName "dwsplitbar" | |
312 #define ObjectClassName "dwobjectclass" | |
313 #define DefaultFont NULL | |
314 | |
315 typedef struct _color { | |
316 int fore; | |
317 int back; | |
39
3aa9ef0b3996
Added focus fixes and set-focus fixes on all three platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
38
diff
changeset
|
318 HWND combo, buddy; |
3 | 319 int user; |
88
58d8139fe0a2
Added vertical center logic for static text controls on windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
70
diff
changeset
|
320 int vcenter; |
40
88c9c7410c22
Lots of fixes and new functions on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
39
diff
changeset
|
321 HWND clickdefault; |
3 | 322 HBRUSH hbrush; |
323 char fontname[128]; | |
324 WNDPROC pOldProc; | |
90
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
325 UserData *root; |
3 | 326 } ColorInfo; |
327 | |
328 typedef struct _notebookpage { | |
329 ColorInfo cinfo; | |
330 TC_ITEM item; | |
331 HWND hwnd; | |
332 int realid; | |
333 } NotebookPage; | |
334 | |
335 typedef HANDLE HMTX; | |
336 typedef HANDLE HEV; | |
157
a07dd2e819f3
Added module support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
155
diff
changeset
|
337 typedef HANDLE HMOD; |
3 | 338 |
339 typedef struct _container { | |
340 ColorInfo cinfo; | |
341 ULONG *flags; | |
342 WNDPROC pOldProc; | |
70
5e7a4d93d8d7
Implemented dw_container_optimize() on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
69
diff
changeset
|
343 ULONG columns; |
3 | 344 } ContainerInfo; |
345 | |
346 typedef struct _hpixmap { | |
347 unsigned long width, height; | |
348 HBITMAP hbm; | |
349 HDC hdc; | |
350 HWND handle; | |
351 void *bits; | |
352 } *HPIXMAP; | |
353 | |
238
13d3de3f1e83
Rewrote the menu code to not return structs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
236
diff
changeset
|
354 typedef HWND HMENUI; |
3 | 355 |
238
13d3de3f1e83
Rewrote the menu code to not return structs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
236
diff
changeset
|
356 #define DW_NOMENU NULL |
3 | 357 #endif |
358 | |
359 typedef struct _item { | |
283
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
360 /* Item type - Box or Item */ |
3 | 361 int type; |
283
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
362 /* Handle to Frame or Window */ |
3 | 363 HWND hwnd; |
283
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
364 /* Width and Height of static size */ |
3 | 365 int width, height, origwidth, origheight; |
283
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
366 /* Size Type - Static or Expand */ |
3 | 367 int hsize, vsize; |
368 /* Padding */ | |
369 int pad; | |
370 /* Ratio of current item */ | |
283
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
371 float xratio, yratio; |
3 | 372 } Item; |
373 | |
374 typedef struct _box { | |
375 #if defined(__WIN32__) || defined(WINNT) | |
376 ColorInfo cinfo; | |
24
d9e87e8bcf1d
Updated dynamic windows to build with EMX.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
22
diff
changeset
|
377 #elif defined(__OS2__) || defined(__EMX__) |
3 | 378 PFNWP oldproc; |
90
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
379 UserData *root; |
40
88c9c7410c22
Lots of fixes and new functions on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
39
diff
changeset
|
380 HWND hwndtitle; |
88c9c7410c22
Lots of fixes and new functions on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
39
diff
changeset
|
381 int titlebar; |
3 | 382 #endif |
283
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
383 /* Number of items in the box */ |
3 | 384 int count; |
385 /* Box type - horizontal or vertical */ | |
386 int type; | |
387 /* Padding */ | |
388 int pad, parentpad; | |
389 /* Groupbox */ | |
34
b03b24bb95f8
Added dw_window_default() to set the default focus widget in a dialog.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
33
diff
changeset
|
390 HWND grouphwnd; |
b03b24bb95f8
Added dw_window_default() to set the default focus widget in a dialog.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
33
diff
changeset
|
391 /* Default item */ |
b03b24bb95f8
Added dw_window_default() to set the default focus widget in a dialog.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
33
diff
changeset
|
392 HWND defaultitem; |
3 | 393 /* Used as temporary storage in the calculation stage */ |
283
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
394 int upx, upy, minheight, minwidth; |
3 | 395 /* Ratio in this box */ |
396 float xratio, yratio, parentxratio, parentyratio; | |
397 /* Used for calculating individual item ratios */ | |
7
005fa766e8c2
Updates to latest build.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
398 int width, height; |
005fa766e8c2
Updates to latest build.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
399 /* Any combinations of flags describing the box */ |
005fa766e8c2
Updates to latest build.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
400 unsigned long flags; |
005fa766e8c2
Updates to latest build.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
401 /* Array of item structures */ |
3 | 402 struct _item *items; |
403 } Box; | |
404 | |
405 typedef struct _bubblebutton { | |
406 #if defined(__WIN32__) || defined(WINNT) | |
407 ColorInfo cinfo; | |
61
4a02842f8074
Added shift-tab and up/down/left/right button support. And added missing
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
60
diff
changeset
|
408 int checkbox; |
90
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
409 WNDPROC pOldProc; |
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
410 #endif |
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
411 #if defined(__OS2__) || defined(__EMX__) |
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
412 PFNWP pOldProc; |
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
413 UserData *root; |
3 | 414 #endif |
415 unsigned long id; | |
416 char bubbletext[BUBBLE_HELP_MAX]; | |
417 } BubbleButton; | |
418 | |
419 void dw_box_pack_start_stub(HWND box, HWND item, int width, int height, int hsize, int vsize, int pad); | |
420 void dw_box_pack_end_stub(HWND box, HWND item, int width, int height, int hsize, int vsize, int pad); | |
421 #else | |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
422 /* GTK Specific section */ |
3 | 423 #include <gtk/gtk.h> |
424 #include <gdk/gdkx.h> | |
425 #include <gdk/gdkprivate.h> | |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
426 #include <gdk/gdkkeysyms.h> |
3 | 427 #include <pthread.h> |
158
a4ae65d5b301
Include dlfcn.h on Unix.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
157
diff
changeset
|
428 #include <dlfcn.h> |
3 | 429 |
430 #define DW_DT_LEFT 1 | |
431 #define DW_DT_UNDERSCORE (1 << 1) | |
432 #define DW_DT_STRIKEOUT (1 << 2) | |
433 #define DW_DT_CENTER (1 << 3) | |
434 #define DW_DT_RIGHT (1 << 4) | |
435 #define DW_DT_TOP (1 << 5) | |
436 #define DW_DT_VCENTER (1 << 6) | |
437 #define DW_DT_BOTTOM (1 << 7) | |
438 #define DW_DT_HALFTONE (1 << 8) | |
439 #define DW_DT_MNEMONIC (1 << 9) | |
440 #define DW_DT_WORDBREAK (1 << 10) | |
441 #define DW_DT_ERASERECT (1 << 11) | |
442 | |
262
ccddd3ca0637
DW_DT_QUERYEXTENT, DW_DT_TEXTATTRS, and DW_DT_EXTERNALLEADING not defined for gtk.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
257
diff
changeset
|
443 /* these don't exist under gtk, so make them dummy entries */ |
ccddd3ca0637
DW_DT_QUERYEXTENT, DW_DT_TEXTATTRS, and DW_DT_EXTERNALLEADING not defined for gtk.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
257
diff
changeset
|
444 #define DW_DT_QUERYEXTENT 0 |
ccddd3ca0637
DW_DT_QUERYEXTENT, DW_DT_TEXTATTRS, and DW_DT_EXTERNALLEADING not defined for gtk.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
257
diff
changeset
|
445 #define DW_DT_TEXTATTRS 0 |
ccddd3ca0637
DW_DT_QUERYEXTENT, DW_DT_TEXTATTRS, and DW_DT_EXTERNALLEADING not defined for gtk.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
257
diff
changeset
|
446 #define DW_DT_EXTERNALLEADING 0 |
ccddd3ca0637
DW_DT_QUERYEXTENT, DW_DT_TEXTATTRS, and DW_DT_EXTERNALLEADING not defined for gtk.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
257
diff
changeset
|
447 |
3 | 448 #define DW_FCF_TITLEBAR 1 |
449 #define DW_FCF_SYSMENU (1 << 1) | |
450 #define DW_FCF_MENU (1 << 2) | |
451 #define DW_FCF_SIZEBORDER (1 << 3) | |
452 #define DW_FCF_MINBUTTON (1 << 4) | |
453 #define DW_FCF_MAXBUTTON (1 << 5) | |
454 #define DW_FCF_MINMAX (1 << 6) | |
455 #define DW_FCF_VERTSCROLL (1 << 7) | |
456 #define DW_FCF_HORZSCROLL (1 << 8) | |
457 #define DW_FCF_DLGBORDER (1 << 9) | |
458 #define DW_FCF_BORDER (1 << 10) | |
459 #define DW_FCF_SHELLPOSITION (1 << 11) | |
460 #define DW_FCF_TASKLIST (1 << 12) | |
461 #define DW_FCF_NOBYTEALIGN (1 << 13) | |
462 #define DW_FCF_NOMOVEWITHOWNER (1 << 14) | |
463 #define DW_FCF_SYSMODAL (1 << 15) | |
464 #define DW_FCF_HIDEBUTTON (1 << 16) | |
465 #define DW_FCF_HIDEMAX (1 << 17) | |
466 #define DW_FCF_AUTOICON (1 << 18) | |
467 | |
468 #define DW_CFA_BITMAPORICON 1 | |
469 #define DW_CFA_STRING (1 << 1) | |
470 #define DW_CFA_ULONG (1 << 2) | |
471 #define DW_CFA_TIME (1 << 3) | |
472 #define DW_CFA_DATE (1 << 4) | |
473 #define DW_CFA_CENTER (1 << 5) | |
474 #define DW_CFA_LEFT (1 << 6) | |
475 #define DW_CFA_RIGHT (1 << 7) | |
476 #define DW_CFA_HORZSEPARATOR (1 << 8) | |
477 #define DW_CFA_SEPARATOR (1 << 9) | |
478 | |
69
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
479 #define DW_CRA_SELECTED 1 |
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
480 #define DW_CRA_CURSORED (1 << 1) |
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
481 |
3 | 482 #define DW_LS_MULTIPLESEL 1 |
483 | |
484 #define DW_LIT_NONE -1 | |
485 | |
486 #define DW_MLE_CASESENSITIVE 1 | |
487 | |
22
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
488 #define DW_POINTER_ARROW GDK_ARROW |
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
489 #define DW_POINTER_CLOCK GDK_CLOCK |
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
490 |
3 | 491 #define HWND_DESKTOP ((HWND)0) |
492 | |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
493 /* Virtual Key Codes */ |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
494 #define VK_LBUTTON GDK_Pointer_Button1 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
495 #define VK_RBUTTON GDK_Pointer_Button3 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
496 #define VK_CANCEL GDK_Cancel |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
497 #define VK_MBUTTON GDK_Pointer_Button2 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
498 #define VK_BACK GDK_Backspace |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
499 #define VK_TAB GDK_Tab |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
500 #define VK_CLEAR GDK_Clear |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
501 #define VK_RETURN GDK_Return |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
502 #define VK_MENU GDK_Menu |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
503 #define VK_PAUSE GDK_Pause |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
504 #define VK_CAPITAL GDK_Caps_Lock |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
505 #define VK_ESCAPE GDK_Escape |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
506 #define VK_SPACE GDK_space |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
507 #define VK_PRIOR GDK_Page_Up |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
508 #define VK_NEXT GDK_Page_Down |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
509 #define VK_END GDK_End |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
510 #define VK_HOME GDK_Home |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
511 #define VK_LEFT GDK_Left |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
512 #define VK_UP GDK_Up |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
513 #define VK_RIGHT GDK_Right |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
514 #define VK_DOWN GDK_Down |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
515 #define VK_SELECT GDK_Select |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
516 #define VK_PRINT GDK_Sys_Req |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
517 #define VK_EXECUTE GDK_Execute |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
518 #define VK_SNAPSHOT GDK_Print |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
519 #define VK_INSERT GDK_Insert |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
520 #define VK_DELETE GDK_Delete |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
521 #define VK_HELP GDK_Help |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
522 #define VK_LWIN GDK_Super_L |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
523 #define VK_RWIN GDK_Super_R |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
524 #define VK_NUMPAD0 GDK_KP_0 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
525 #define VK_NUMPAD1 GDK_KP_1 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
526 #define VK_NUMPAD2 GDK_KP_2 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
527 #define VK_NUMPAD3 GDK_KP_3 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
528 #define VK_NUMPAD4 GDK_KP_4 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
529 #define VK_NUMPAD5 GDK_KP_5 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
530 #define VK_NUMPAD6 GDK_KP_6 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
531 #define VK_NUMPAD7 GDK_KP_7 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
532 #define VK_NUMPAD8 GDK_KP_8 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
533 #define VK_NUMPAD9 GDK_KP_9 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
534 #define VK_MULTIPLY GDK_KP_Multiply |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
535 #define VK_ADD GDK_KP_Add |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
536 #define VK_SEPARATOR GDK_KP_Separator |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
537 #define VK_SUBTRACT GDK_KP_Subtract |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
538 #define VK_DECIMAL GDK_KP_Decimal |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
539 #define VK_DIVIDE GDK_KP_Divide |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
540 #define VK_F1 GDK_F1 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
541 #define VK_F2 GDK_F2 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
542 #define VK_F3 GDK_F3 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
543 #define VK_F4 GDK_F4 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
544 #define VK_F5 GDK_F5 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
545 #define VK_F6 GDK_F6 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
546 #define VK_F7 GDK_F7 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
547 #define VK_F8 GDK_F8 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
548 #define VK_F9 GDK_F9 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
549 #define VK_F10 GDK_F10 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
550 #define VK_F11 GDK_F11 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
551 #define VK_F12 GDK_F12 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
552 #define VK_F13 GDK_F13 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
553 #define VK_F14 GDK_F14 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
554 #define VK_F15 GDK_F15 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
555 #define VK_F16 GDK_F16 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
556 #define VK_F17 GDK_F17 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
557 #define VK_F18 GDK_F18 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
558 #define VK_F19 GDK_F19 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
559 #define VK_F20 GDK_F20 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
560 #define VK_F21 GDK_F21 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
561 #define VK_F22 GDK_F22 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
562 #define VK_F23 GDK_F23 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
563 #define VK_F24 GDK_F24 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
564 #define VK_NUMLOCK GDK_Num_Lock |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
565 #define VK_SCROLL GDK_Scroll_Lock |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
566 #define VK_LSHIFT GDK_Shift_L |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
567 #define VK_RSHIFT GDK_Shift_R |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
568 #define VK_LCONTROL GDK_Control_L |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
569 #define VK_RCONTROL GDK_Control_R |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
570 #define VK_LMENU GDK_Menu |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
571 #define VK_RMENU GDK_Menu |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
572 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
573 /* Key Modifiers */ |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
574 #define KC_CTRL GDK_CONTROL_MASK |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
575 #define KC_SHIFT GDK_SHIFT_MASK |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
576 #define KC_ALT GDK_MOD1_MASK |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
577 |
3 | 578 typedef GtkWidget *HWND; |
38
538db2a48bac
Added typecast to MPARAM.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
34
diff
changeset
|
579 #ifndef _ENVRNMNT_H |
3 | 580 typedef unsigned long ULONG; |
38
538db2a48bac
Added typecast to MPARAM.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
34
diff
changeset
|
581 #endif |
3 | 582 typedef long LONG; |
583 typedef unsigned short USHORT; | |
584 typedef short SHORT; | |
236
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
585 typedef unsigned short UWORD; |
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
586 typedef short WORD ; |
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
587 typedef unsigned char UCHAR; |
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
588 typedef char CHAR; |
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
589 typedef unsigned UINT; |
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
590 typedef int INT; |
239
403b07f873e1
Use a pointer for HMTX instead of a pthread_mutex_t struct.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
238
diff
changeset
|
591 typedef pthread_mutex_t *HMTX; |
3 | 592 typedef struct _dw_unix_event { |
593 pthread_mutex_t mutex; | |
594 pthread_cond_t event; | |
595 pthread_t thread; | |
596 int alive; | |
283
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
597 int posted; |
3 | 598 } *HEV; |
599 typedef pthread_t DWTID; | |
157
a07dd2e819f3
Added module support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
155
diff
changeset
|
600 typedef void * HMOD; |
3 | 601 |
602 typedef struct _hpixmap { | |
603 unsigned long width, height; | |
604 GdkPixmap *pixmap; | |
283
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
605 HWND handle; |
3 | 606 } *HPIXMAP; |
607 | |
185
f55677513954
Updated the menu code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
182
diff
changeset
|
608 typedef GtkWidget *HMENUI; |
328
e00aff2b899e
Tree item handles are now of the type HTREEITEM instead of HWND since they
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
325
diff
changeset
|
609 typedef void *HTREEITEM; |
185
f55677513954
Updated the menu code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
182
diff
changeset
|
610 |
f55677513954
Updated the menu code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
182
diff
changeset
|
611 #define DW_NOMENU NULL |
3 | 612 |
613 typedef struct _resource_struct { | |
614 long resource_max, *resource_id; | |
615 char **resource_data; | |
616 } DWResources; | |
617 | |
618 #if !defined(DW_RESOURCES) || defined(BUILD_DLL) | |
619 static DWResources _resources = { 0, 0, 0 }; | |
620 #else | |
621 extern DWResources _resources; | |
622 #endif | |
623 | |
624 #endif | |
625 | |
626 #if !defined(__OS2__) && !defined(__EMX__) | |
627 typedef struct _CDATE | |
628 { | |
283
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
629 UCHAR day; |
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
630 UCHAR month; |
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
631 USHORT year; |
3 | 632 } CDATE; |
633 typedef CDATE *PCDATE; | |
634 | |
635 typedef struct _CTIME | |
636 { | |
283
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
637 UCHAR hours; |
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
638 UCHAR minutes; |
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
639 UCHAR seconds; |
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
640 UCHAR ucReserved; |
3 | 641 } CTIME; |
642 typedef CTIME *PCTIME; | |
643 #endif | |
644 | |
645 #if defined(__OS2__) || defined(__WIN32__) || defined(WINNT) || defined(__EMX__) | |
646 typedef unsigned long DWTID; | |
647 #endif | |
648 | |
649 typedef struct _dwenv { | |
15
81833f25b1aa
Added new Dynamic Windows build information to the DWEnv struct.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
14
diff
changeset
|
650 /* Operating System Name and DW Build Date/Time */ |
81833f25b1aa
Added new Dynamic Windows build information to the DWEnv struct.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
14
diff
changeset
|
651 char osName[30], buildDate[30], buildTime[30]; |
3 | 652 /* Versions and builds */ |
653 short MajorVersion, MinorVersion, MajorBuild, MinorBuild; | |
15
81833f25b1aa
Added new Dynamic Windows build information to the DWEnv struct.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
14
diff
changeset
|
654 /* Dynamic Window version */ |
81833f25b1aa
Added new Dynamic Windows build information to the DWEnv struct.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
14
diff
changeset
|
655 short DWMajorVersion, DWMinorVersion, DWSubVersion; |
3 | 656 } DWEnv; |
657 | |
658 | |
659 typedef struct _dwexpose { | |
660 int x, y; | |
661 int width, height; | |
662 } DWExpose; | |
663 | |
664 typedef struct _dwdialog { | |
665 HEV eve; | |
666 int done; | |
667 void *data, *result; | |
668 } DWDialog; | |
669 | |
670 #define DW_SIGNAL_FUNC(a) ((void *)a) | |
671 | |
262
ccddd3ca0637
DW_DT_QUERYEXTENT, DW_DT_TEXTATTRS, and DW_DT_EXTERNALLEADING not defined for gtk.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
257
diff
changeset
|
672 #define DW_DESKTOP HWND_DESKTOP |
7
005fa766e8c2
Updates to latest build.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
673 #define DW_MINIMIZED 1 |
005fa766e8c2
Updates to latest build.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
674 |
3 | 675 #define DW_BUTTON1_MASK 1 |
676 #define DW_BUTTON2_MASK (1 << 1) | |
677 #define DW_BUTTON3_MASK (1 << 2) | |
678 | |
679 #define DW_EXEC_CON 0 | |
680 #define DW_EXEC_GUI 1 | |
681 | |
682 #define DW_FILE_OPEN 0 | |
683 #define DW_FILE_SAVE 1 | |
684 | |
283
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
685 #define DW_HORZ 0 |
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
686 #define DW_VERT 1 |
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
687 |
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
688 /* Obsolete, should disappear sometime */ |
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
689 #define BOXHORZ DW_HORZ |
54aafc134652
BOXVERT is now DW_VERT and BOXHORZ is now DW_HORZ. Also code cleanups,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
279
diff
changeset
|
690 #define BOXVERT DW_VERT |
3 | 691 |
22
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
692 #define DW_SCROLL_UP 0 |
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
693 #define DW_SCROLL_DOWN 1 |
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
694 #define DW_SCROLL_TOP 2 |
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
695 #define DW_SCROLL_BOTTOM 3 |
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
696 |
3 | 697 #define DW_PIXMAP_WIDTH(x) (x ? x->width : 0) |
698 #define DW_PIXMAP_HEIGHT(x) (x ? x->height : 0) | |
699 | |
62
2be5174bdb5d
Sync with latest DW code. Tab and RGB fixes.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
61
diff
changeset
|
700 #define DW_RGB_COLOR (0xF0000000) |
3 | 701 #define DW_RGB_MASK (0x00FFFFFF) |
702 #define DW_RED_MASK (0x000000FF) | |
703 #define DW_GREEN_MASK (0x0000FF00) | |
704 #define DW_BLUE_MASK (0x00FF0000) | |
705 #define DW_RED_VALUE(a) (a & DW_RED_MASK) | |
706 #define DW_GREEN_VALUE(a) ((a & DW_GREEN_MASK) >> 8) | |
707 #define DW_BLUE_VALUE(a) ((a & DW_BLUE_MASK) >> 16) | |
62
2be5174bdb5d
Sync with latest DW code. Tab and RGB fixes.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
61
diff
changeset
|
708 #define DW_RGB(a, b, c) (0xF0000000 | a | b << 8 | c << 16) |
3 | 709 |
325
e5f0613b65cd
Added DW_MENU_SEPARATOR.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
317
diff
changeset
|
710 #define DW_MENU_SEPARATOR "" |
e5f0613b65cd
Added DW_MENU_SEPARATOR.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
317
diff
changeset
|
711 |
24
d9e87e8bcf1d
Updated dynamic windows to build with EMX.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
22
diff
changeset
|
712 #if defined(__OS2__) || defined(__EMX__) |
3 | 713 #define DW_OS2_RGB(a) ((DW_RED_VALUE(a) << 16) | (DW_GREEN_VALUE(a) << 8) | DW_BLUE_VALUE(a)) |
714 #endif | |
715 | |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
716 #ifndef API |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
717 #define API |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
718 #endif |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
719 |
175
d78d08440246
Use _System/_stdcall for callbacks.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
174
diff
changeset
|
720 #define DWSIGNAL API |
d78d08440246
Use _System/_stdcall for callbacks.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
174
diff
changeset
|
721 |
3 | 722 /* Public function prototypes */ |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
723 void API dw_box_pack_start(HWND box, HWND item, int width, int height, int hsize, int vsize, int pad); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
724 void API dw_box_pack_end(HWND box, HWND item, int width, int height, int hsize, int vsize, int pad); |
24
d9e87e8bcf1d
Updated dynamic windows to build with EMX.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
22
diff
changeset
|
725 #if !defined(__OS2__) && !defined(__WIN32__) && !defined(__EMX__) |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
726 int API dw_int_init(DWResources *res, int newthread, int *argc, char **argv[]); |
134
caeb52bb5ef4
Pass pointers to argc and argv on Unix.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
120
diff
changeset
|
727 #define dw_init(a, b, c) dw_int_init(&_resources, a, &b, &c) |
3 | 728 #else |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
729 int API dw_init(int newthread, int argc, char *argv[]); |
3 | 730 #endif |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
731 void API dw_main(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
732 void API dw_main_sleep(int seconds); |
203
e0beea487e8f
Added the basics for scrollbar thumb size on OS/2, and dw_main_iteration()
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
199
diff
changeset
|
733 void API dw_main_iteration(void); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
734 void API dw_free(void *ptr); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
735 int API dw_window_show(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
736 int API dw_window_hide(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
737 int API dw_window_minimize(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
738 int API dw_window_raise(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
739 int API dw_window_lower(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
740 int API dw_window_destroy(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
741 void API dw_window_redraw(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
742 int API dw_window_set_font(HWND handle, char *fontname); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
743 int API dw_window_set_color(HWND handle, unsigned long fore, unsigned long back); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
744 HWND API dw_window_new(HWND hwndOwner, char *title, unsigned long flStyle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
745 HWND API dw_box_new(int type, int pad); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
746 HWND API dw_groupbox_new(int type, int pad, char *title); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
747 HWND API dw_mdi_new(unsigned long id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
748 HWND API dw_bitmap_new(unsigned long id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
749 HWND API dw_bitmapbutton_new(char *text, unsigned long id); |
279
984db8aefd7f
Build fixes for GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
278
diff
changeset
|
750 HWND API dw_bitmapbutton_new_from_file(char *text, unsigned long id, char *filename); |
350
2216e65ad2ae
Removed slider flags and container selection flags from the header file.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
751 HWND API dw_container_new(unsigned long id, int multi); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
752 HWND API dw_tree_new(unsigned long id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
753 HWND API dw_text_new(char *text, unsigned long id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
754 HWND API dw_status_text_new(char *text, unsigned long id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
755 HWND API dw_mle_new(unsigned long id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
756 HWND API dw_entryfield_new(char *text, unsigned long id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
757 HWND API dw_entryfield_password_new(char *text, ULONG id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
758 HWND API dw_combobox_new(char *text, unsigned long id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
759 HWND API dw_button_new(char *text, unsigned long id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
760 HWND API dw_spinbutton_new(char *text, unsigned long id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
761 HWND API dw_radiobutton_new(char *text, ULONG id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
762 HWND API dw_percent_new(unsigned long id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
763 HWND API dw_slider_new(int vertical, int increments, ULONG id); |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
185
diff
changeset
|
764 HWND API dw_scrollbar_new(int vertical, int increments, ULONG id); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
765 HWND API dw_checkbox_new(char *text, unsigned long id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
766 HWND API dw_listbox_new(unsigned long id, int multi); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
767 void API dw_listbox_append(HWND handle, char *text); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
768 void API dw_listbox_clear(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
769 int API dw_listbox_count(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
770 void API dw_listbox_set_top(HWND handle, int top); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
771 void API dw_listbox_select(HWND handle, int index, int state); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
772 void API dw_listbox_delete(HWND handle, int index); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
773 void API dw_listbox_query_text(HWND handle, unsigned int index, char *buffer, unsigned int length); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
774 void API dw_listbox_set_text(HWND handle, unsigned int index, char *buffer); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
775 unsigned int API dw_listbox_selected(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
776 int API dw_listbox_selected_multi(HWND handle, int where); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
777 unsigned int API dw_percent_query_range(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
778 void API dw_percent_set_pos(HWND handle, unsigned int position); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
779 unsigned int API dw_slider_query_pos(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
780 void API dw_slider_set_pos(HWND handle, unsigned int position); |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
185
diff
changeset
|
781 unsigned int API dw_scrollbar_query_pos(HWND handle); |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
185
diff
changeset
|
782 void API dw_scrollbar_set_pos(HWND handle, unsigned int position); |
203
e0beea487e8f
Added the basics for scrollbar thumb size on OS/2, and dw_main_iteration()
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
199
diff
changeset
|
783 void API dw_scrollbar_set_range(HWND handle, unsigned int range, unsigned int visible); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
784 void API dw_window_set_pos(HWND handle, unsigned long x, unsigned long y); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
785 void API dw_window_set_usize(HWND handle, unsigned long width, unsigned long height); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
786 void API dw_window_set_pos_size(HWND handle, unsigned long x, unsigned long y, unsigned long width, unsigned long height); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
787 void API dw_window_get_pos_size(HWND handle, unsigned long *x, unsigned long *y, unsigned long *width, unsigned long *height); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
788 void API dw_window_set_style(HWND handle, unsigned long style, unsigned long mask); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
789 void API dw_window_set_icon(HWND handle, unsigned long id); |
278
df0665ba147f
Initial code for dw_bitmapbutton_new_from_file and added filename parameter
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
267
diff
changeset
|
790 void API dw_window_set_bitmap(HWND handle, unsigned long id, char *filename); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
791 char * API dw_window_get_text(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
792 void API dw_window_set_text(HWND handle, char *text); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
793 int API dw_window_set_border(HWND handle, int border); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
794 void API dw_window_disable(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
795 void API dw_window_enable(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
796 void API dw_window_capture(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
797 void API dw_window_release(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
798 void API dw_window_reparent(HWND handle, HWND newparent); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
799 void API dw_window_pointer(HWND handle, int pointertype); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
800 void API dw_window_default(HWND window, HWND defaultitem); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
801 void API dw_window_click_default(HWND window, HWND next); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
802 unsigned int API dw_mle_import(HWND handle, char *buffer, int startpoint); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
803 void API dw_mle_export(HWND handle, char *buffer, int startpoint, int length); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
804 void API dw_mle_query(HWND handle, unsigned long *bytes, unsigned long *lines); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
805 void API dw_mle_delete(HWND handle, int startpoint, int length); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
806 void API dw_mle_clear(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
807 void API dw_mle_freeze(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
808 void API dw_mle_thaw(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
809 void API dw_mle_set(HWND handle, int point); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
810 void API dw_mle_set_visible(HWND handle, int line); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
811 void API dw_mle_set_editable(HWND handle, int state); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
812 void API dw_mle_set_word_wrap(HWND handle, int state); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
813 int API dw_mle_search(HWND handle, char *text, int point, unsigned long flags); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
814 void API dw_spinbutton_set_pos(HWND handle, long position); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
815 void API dw_spinbutton_set_limits(HWND handle, long upper, long lower); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
816 void API dw_entryfield_set_limit(HWND handle, ULONG limit); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
817 long API dw_spinbutton_query(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
818 int API dw_checkbox_query(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
819 void API dw_checkbox_set(HWND handle, int value); |
328
e00aff2b899e
Tree item handles are now of the type HTREEITEM instead of HWND since they
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
325
diff
changeset
|
820 HTREEITEM API dw_tree_insert(HWND handle, char *title, unsigned long icon, HTREEITEM parent, void *itemdata); |
e00aff2b899e
Tree item handles are now of the type HTREEITEM instead of HWND since they
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
325
diff
changeset
|
821 HTREEITEM API dw_tree_insert_after(HWND handle, HTREEITEM item, char *title, unsigned long icon, HTREEITEM parent, void *itemdata); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
822 void API dw_tree_clear(HWND handle); |
328
e00aff2b899e
Tree item handles are now of the type HTREEITEM instead of HWND since they
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
325
diff
changeset
|
823 void API dw_tree_delete(HWND handle, HTREEITEM item); |
e00aff2b899e
Tree item handles are now of the type HTREEITEM instead of HWND since they
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
325
diff
changeset
|
824 void API dw_tree_set(HWND handle, HTREEITEM item, char *title, unsigned long icon); |
e00aff2b899e
Tree item handles are now of the type HTREEITEM instead of HWND since they
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
325
diff
changeset
|
825 void API dw_tree_expand(HWND handle, HTREEITEM item); |
e00aff2b899e
Tree item handles are now of the type HTREEITEM instead of HWND since they
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
325
diff
changeset
|
826 void API dw_tree_collapse(HWND handle, HTREEITEM item); |
e00aff2b899e
Tree item handles are now of the type HTREEITEM instead of HWND since they
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
325
diff
changeset
|
827 void API dw_tree_item_select(HWND handle, HTREEITEM item); |
e00aff2b899e
Tree item handles are now of the type HTREEITEM instead of HWND since they
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
325
diff
changeset
|
828 void API dw_tree_set_data(HWND handle, HTREEITEM item, void *itemdata); |
e00aff2b899e
Tree item handles are now of the type HTREEITEM instead of HWND since they
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
325
diff
changeset
|
829 void * API dw_tree_get_data(HWND handle, HTREEITEM item); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
830 int API dw_container_setup(HWND handle, unsigned long *flags, char **titles, int count, int separator); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
831 unsigned long API dw_icon_load(unsigned long module, unsigned long id); |
257
9ea4ac9a097f
Added dw_icon_load_from_file() on OS/2 and Windows. Added a stub on Unix
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
241
diff
changeset
|
832 unsigned long API dw_icon_load_from_file(char *filename); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
833 void API dw_icon_free(unsigned long handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
834 void * API dw_container_alloc(HWND handle, int rowcount); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
835 void API dw_container_set_item(HWND handle, void *pointer, int column, int row, void *data); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
836 void API dw_container_change_item(HWND handle, int column, int row, void *data); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
837 void API dw_container_set_column_width(HWND handle, int column, int width); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
838 void API dw_container_set_row_title(void *pointer, int row, char *title); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
839 void API dw_container_insert(HWND handle, void *pointer, int rowcount); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
840 void API dw_container_clear(HWND handle, int redraw); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
841 void API dw_container_delete(HWND handle, int rowcount); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
842 char * API dw_container_query_start(HWND handle, unsigned long flags); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
843 char * API dw_container_query_next(HWND handle, unsigned long flags); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
844 void API dw_container_scroll(HWND handle, int direction, long rows); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
845 void API dw_container_cursor(HWND handle, char *text); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
846 void API dw_container_delete_row(HWND handle, char *text); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
847 void API dw_container_optimize(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
848 int API dw_filesystem_setup(HWND handle, unsigned long *flags, char **titles, int count); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
849 void API dw_filesystem_set_item(HWND handle, void *pointer, int column, int row, void *data); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
850 void API dw_filesystem_set_file(HWND handle, void *pointer, int row, char *filename, unsigned long icon); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
851 int API dw_screen_width(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
852 int API dw_screen_height(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
853 unsigned long API dw_color_depth(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
854 HWND API dw_notebook_new(unsigned long id, int top); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
855 unsigned long API dw_notebook_page_new(HWND handle, unsigned long flags, int front); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
856 void API dw_notebook_page_destroy(HWND handle, unsigned int pageid); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
857 void API dw_notebook_page_set_text(HWND handle, unsigned long pageid, char *text); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
858 void API dw_notebook_page_set_status_text(HWND handle, unsigned long pageid, char *text); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
859 void API dw_notebook_page_set(HWND handle, unsigned int pageid); |
346
81fae15885d7
Implemented switch-page on OS/2, and changed the signal prototype to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
330
diff
changeset
|
860 unsigned long API dw_notebook_page_query(HWND handle); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
861 void API dw_notebook_pack(HWND handle, unsigned long pageid, HWND page); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
862 HWND API dw_splitbar_new(int type, HWND topleft, HWND bottomright, unsigned long id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
863 void API dw_splitbar_set(HWND handle, float percent); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
864 float API dw_splitbar_get(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
865 HMENUI API dw_menu_new(unsigned long id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
866 HMENUI API dw_menubar_new(HWND location); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
867 HWND API dw_menu_append_item(HMENUI menu, char *title, unsigned long id, unsigned long flags, int end, int check, HMENUI submenu); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
868 void API dw_menu_item_set_check(HMENUI menu, unsigned long id, int check); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
869 void API dw_menu_popup(HMENUI *menu, HWND parent, int x, int y); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
870 void API dw_menu_destroy(HMENUI *menu); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
871 void API dw_pointer_query_pos(long *x, long *y); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
872 void API dw_pointer_set_pos(long x, long y); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
873 void API dw_window_function(HWND handle, void *function, void *data); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
874 HWND API dw_window_from_id(HWND handle, int id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
875 HMTX API dw_mutex_new(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
876 void API dw_mutex_close(HMTX mutex); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
877 void API dw_mutex_lock(HMTX mutex); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
878 void API dw_mutex_unlock(HMTX mutex); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
879 HEV API dw_event_new(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
880 int API dw_event_reset(HEV eve); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
881 int API dw_event_post(HEV eve); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
882 int API dw_event_wait(HEV eve, unsigned long timeout); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
883 int API dw_event_close (HEV *eve); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
884 DWTID API dw_thread_new(void *func, void *data, int stack); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
885 void API dw_thread_end(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
886 DWTID API dw_thread_id(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
887 void API dw_exit(int exitcode); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
888 HWND API dw_render_new(unsigned long id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
889 void API dw_color_foreground_set(unsigned long value); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
890 void API dw_color_background_set(unsigned long value); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
891 void API dw_draw_point(HWND handle, HPIXMAP pixmap, int x, int y); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
892 void API dw_draw_line(HWND handle, HPIXMAP pixmap, int x1, int y1, int x2, int y2); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
893 void API dw_draw_rect(HWND handle, HPIXMAP pixmap, int fill, int x, int y, int width, int height); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
894 void API dw_draw_text(HWND handle, HPIXMAP pixmap, int x, int y, char *text); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
895 void API dw_font_text_extents(HWND handle, HPIXMAP pixmap, char *text, int *width, int *height); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
896 void API dw_flush(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
897 void API dw_pixmap_bitblt(HWND dest, HPIXMAP destp, int xdest, int ydest, int width, int height, HWND src, HPIXMAP srcp, int xsrc, int ysrc); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
898 HPIXMAP API dw_pixmap_new(HWND handle, unsigned long width, unsigned long height, int depth); |
241
00d2b1bcf036
Added dw_pixmap_new_from_file().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
239
diff
changeset
|
899 HPIXMAP API dw_pixmap_new_from_file(HWND handle, char *filename); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
900 HPIXMAP API dw_pixmap_grab(HWND handle, ULONG id); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
901 void API dw_pixmap_destroy(HPIXMAP pixmap); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
902 void API dw_beep(int freq, int dur); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
903 int API dw_messagebox(char *title, char *format, ...); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
904 int API dw_yesno(char *title, char *text); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
905 void API dw_environment_query(DWEnv *env); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
906 int API dw_exec(char *program, int type, char **params); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
907 int API dw_browse(char *url); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
908 char * API dw_file_browse(char *title, char *defpath, char *ext, int flags); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
909 char * API dw_user_dir(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
910 DWDialog * API dw_dialog_new(void *data); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
911 int API dw_dialog_dismiss(DWDialog *dialog, void *result); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
912 void * API dw_dialog_wait(DWDialog *dialog); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
913 void API dw_window_set_data(HWND window, char *dataname, void *data); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
914 void * API dw_window_get_data(HWND window, char *dataname); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
915 int API dw_module_load(char *name, HMOD *handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
916 int API dw_module_symbol(HMOD handle, char *name, void**func); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
917 int API dw_module_close(HMOD handle); |
199
b955228477b3
Removed the window parameter to dw_timer_connect() it was no needed.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
195
diff
changeset
|
918 int API dw_timer_connect(int interval, void *sigfunc, void *data); |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
185
diff
changeset
|
919 void API dw_timer_disconnect(int id); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
920 void API dw_signal_connect(HWND window, char *signame, void *sigfunc, void *data); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
921 void API dw_signal_disconnect_by_window(HWND window); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
922 void API dw_signal_disconnect_by_data(HWND window, void *data); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
923 void API dw_signal_disconnect_by_name(HWND window, char *signame); |
3 | 924 |
925 #endif |