Mercurial > dwindows
annotate dw.h @ 377:d8176c73a081
Fixes for drawing of the combobox on OS/2. It now queries the entryfield
size when calculating the area to fill. Also, it checks the color set
by the user on the parent box to use the correct fill color.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Sun, 27 Apr 2003 23:00:35 +0000 |
parents | 39983df2b93d |
children | cbf4df4bc2f1 |
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) |
369
39983df2b93d
Updated the license information, and copyrights. Code to do background
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
350
diff
changeset
|
701 #define DW_RGB_TRANSPARENT (0x0F000000) |
3 | 702 #define DW_RGB_MASK (0x00FFFFFF) |
703 #define DW_RED_MASK (0x000000FF) | |
704 #define DW_GREEN_MASK (0x0000FF00) | |
705 #define DW_BLUE_MASK (0x00FF0000) | |
706 #define DW_RED_VALUE(a) (a & DW_RED_MASK) | |
707 #define DW_GREEN_VALUE(a) ((a & DW_GREEN_MASK) >> 8) | |
708 #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
|
709 #define DW_RGB(a, b, c) (0xF0000000 | a | b << 8 | c << 16) |
3 | 710 |
325
e5f0613b65cd
Added DW_MENU_SEPARATOR.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
317
diff
changeset
|
711 #define DW_MENU_SEPARATOR "" |
e5f0613b65cd
Added DW_MENU_SEPARATOR.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
317
diff
changeset
|
712 |
24
d9e87e8bcf1d
Updated dynamic windows to build with EMX.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
22
diff
changeset
|
713 #if defined(__OS2__) || defined(__EMX__) |
3 | 714 #define DW_OS2_RGB(a) ((DW_RED_VALUE(a) << 16) | (DW_GREEN_VALUE(a) << 8) | DW_BLUE_VALUE(a)) |
715 #endif | |
716 | |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
717 #ifndef API |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
718 #define API |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
719 #endif |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
720 |
175
d78d08440246
Use _System/_stdcall for callbacks.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
174
diff
changeset
|
721 #define DWSIGNAL API |
d78d08440246
Use _System/_stdcall for callbacks.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
174
diff
changeset
|
722 |
3 | 723 /* Public function prototypes */ |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
724 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
|
725 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
|
726 #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
|
727 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
|
728 #define dw_init(a, b, c) dw_int_init(&_resources, a, &b, &c) |
3 | 729 #else |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
730 int API dw_init(int newthread, int argc, char *argv[]); |
3 | 731 #endif |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
732 void API dw_main(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
733 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
|
734 void API dw_main_iteration(void); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
735 void API dw_free(void *ptr); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
736 int API dw_window_show(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
737 int API dw_window_hide(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
738 int API dw_window_minimize(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
739 int API dw_window_raise(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
740 int API dw_window_lower(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
741 int API dw_window_destroy(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
742 void API dw_window_redraw(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
743 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
|
744 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
|
745 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
|
746 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
|
747 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
|
748 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
|
749 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
|
750 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
|
751 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
|
752 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
|
753 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
|
754 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
|
755 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
|
756 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
|
757 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
|
758 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
|
759 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
|
760 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
|
761 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
|
762 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
|
763 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
|
764 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
|
765 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
|
766 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
|
767 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
|
768 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
|
769 void API dw_listbox_clear(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
770 int API dw_listbox_count(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
771 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
|
772 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
|
773 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
|
774 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
|
775 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
|
776 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
|
777 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
|
778 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
|
779 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
|
780 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
|
781 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
|
782 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
|
783 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
|
784 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
|
785 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
|
786 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
|
787 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
|
788 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
|
789 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
|
790 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
|
791 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
|
792 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
|
793 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
|
794 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
|
795 void API dw_window_disable(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
796 void API dw_window_enable(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
797 void API dw_window_capture(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
798 void API dw_window_release(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
799 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
|
800 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
|
801 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
|
802 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
|
803 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
|
804 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
|
805 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
|
806 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
|
807 void API dw_mle_clear(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
808 void API dw_mle_freeze(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
809 void API dw_mle_thaw(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
810 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
|
811 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
|
812 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
|
813 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
|
814 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
|
815 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
|
816 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
|
817 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
|
818 long API dw_spinbutton_query(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
819 int API dw_checkbox_query(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
820 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
|
821 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
|
822 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
|
823 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
|
824 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
|
825 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
|
826 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
|
827 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
|
828 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
|
829 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
|
830 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
|
831 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
|
832 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
|
833 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
|
834 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
|
835 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
|
836 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
|
837 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
|
838 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
|
839 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
|
840 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
|
841 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
|
842 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
|
843 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
|
844 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
|
845 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
|
846 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
|
847 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
|
848 void API dw_container_optimize(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
849 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
|
850 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
|
851 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
|
852 int API dw_screen_width(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
853 int API dw_screen_height(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
854 unsigned long API dw_color_depth(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
855 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
|
856 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
|
857 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
|
858 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
|
859 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
|
860 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
|
861 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
|
862 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
|
863 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
|
864 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
|
865 float API dw_splitbar_get(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
866 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
|
867 HMENUI API dw_menubar_new(HWND location); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
868 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
|
869 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
|
870 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
|
871 void API dw_menu_destroy(HMENUI *menu); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
872 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
|
873 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
|
874 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
|
875 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
|
876 HMTX API dw_mutex_new(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
877 void API dw_mutex_close(HMTX mutex); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
878 void API dw_mutex_lock(HMTX mutex); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
879 void API dw_mutex_unlock(HMTX mutex); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
880 HEV API dw_event_new(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
881 int API dw_event_reset(HEV eve); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
882 int API dw_event_post(HEV eve); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
883 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
|
884 int API dw_event_close (HEV *eve); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
885 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
|
886 void API dw_thread_end(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
887 DWTID API dw_thread_id(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
888 void API dw_exit(int exitcode); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
889 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
|
890 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
|
891 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
|
892 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
|
893 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
|
894 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
|
895 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
|
896 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
|
897 void API dw_flush(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
898 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
|
899 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
|
900 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
|
901 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
|
902 void API dw_pixmap_destroy(HPIXMAP pixmap); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
903 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
|
904 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
|
905 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
|
906 void API dw_environment_query(DWEnv *env); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
907 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
|
908 int API dw_browse(char *url); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
909 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
|
910 char * API dw_user_dir(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
911 DWDialog * API dw_dialog_new(void *data); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
912 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
|
913 void * API dw_dialog_wait(DWDialog *dialog); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
914 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
|
915 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
|
916 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
|
917 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
|
918 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
|
919 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
|
920 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
|
921 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
|
922 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
|
923 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
|
924 void API dw_signal_disconnect_by_name(HWND window, char *signame); |
3 | 925 |
926 #endif |