Mercurial > dwindows
annotate dw.h @ 723:37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
perhaps they need focus? Will have to see what to do about that.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Mon, 14 Mar 2011 01:57:33 +0000 |
parents | 830e1f3672b9 |
children | 41080d22edc8 |
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 */ |
624
7bdb2a58c51d
Update package version
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
618
diff
changeset
|
7 #define DW_MAJOR_VERSION 1 |
7bdb2a58c51d
Update package version
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
618
diff
changeset
|
8 #define DW_MINOR_VERSION 1 |
7bdb2a58c51d
Update package version
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
618
diff
changeset
|
9 #define DW_SUB_VERSION 0 |
15
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" |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
49 #define DW_SIGNAL_COLUMN_CLICK "click-column" |
478
ea099ba917c6
Added two new tree functions, get_title and get_parent and finished the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
471
diff
changeset
|
50 #define DW_SIGNAL_TREE_EXPAND "tree-expand" |
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
|
51 |
618
a431ee5e049f
Added dw_menu_item_set_state() to set checked status of menu item and ability to enable/disable menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
613
diff
changeset
|
52 /* status of menu items */ |
a431ee5e049f
Added dw_menu_item_set_state() to set checked status of menu item and ability to enable/disable menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
613
diff
changeset
|
53 #define DW_MIS_ENABLED 1 |
a431ee5e049f
Added dw_menu_item_set_state() to set checked status of menu item and ability to enable/disable menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
613
diff
changeset
|
54 #define DW_MIS_DISABLED (1 << 1) |
a431ee5e049f
Added dw_menu_item_set_state() to set checked status of menu item and ability to enable/disable menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
613
diff
changeset
|
55 #define DW_MIS_CHECKED (1 << 2) |
a431ee5e049f
Added dw_menu_item_set_state() to set checked status of menu item and ability to enable/disable menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
613
diff
changeset
|
56 #define DW_MIS_UNCHECKED (1 << 3) |
a431ee5e049f
Added dw_menu_item_set_state() to set checked status of menu item and ability to enable/disable menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
613
diff
changeset
|
57 |
634
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
58 /* ensure we can build the Gtk port with MingW on Windows */ |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
59 #if defined(DW_USE_GTK) && defined(__MINGW32__) |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
60 # ifndef GDK_WINDOWING_WIN32 |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
61 # define GDK_WINDOWING_WIN32 |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
62 # endif |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
63 #endif |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
64 |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
65 #if defined(__OS2__) || (defined(__WIN32__) && !defined(GDK_WINDOWING_WIN32)) || defined(__MAC__) || (defined(WINNT) && !defined(GDK_WINDOWING_WIN32)) || defined(__EMX__) |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
66 /* OS/2, Windows or MacOS */ |
3 | 67 |
525
2ff26b697877
Fixes for building with Innotek GCC. Will have to check for regressions
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
514
diff
changeset
|
68 #if (defined(__IBMC__) || defined(_System)) && !defined(API) |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
69 #define API _System |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
70 #endif |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
71 |
3 | 72 /* Used internally */ |
73 #define TYPEBOX 0 | |
74 #define TYPEITEM 1 | |
75 | |
76 #define SIZESTATIC 0 | |
77 #define SIZEEXPAND 1 | |
78 | |
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
|
79 #define SPLITBAR_WIDTH 4 |
3 | 80 #define BUBBLE_HELP_MAX 256 |
81 | |
90
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
82 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
|
83 { |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
84 struct _user_data *next; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
85 void *data; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
86 char *varname; |
90
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
87 } UserData; |
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
88 |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
89 /* OS/2 Specific section */ |
3 | 90 #if defined(__OS2__) || defined(__EMX__) |
91 #define INCL_DOS | |
92 #define INCL_WIN | |
93 #define INCL_GPI | |
94 | |
95 #include <os2.h> | |
96 | |
97 #define DW_DT_LEFT DT_LEFT | |
98 #define DW_DT_QUERYEXTENT DT_QUERYEXTENT | |
99 #define DW_DT_UNDERSCORE DT_UNDERSCORE | |
100 #define DW_DT_STRIKEOUT DT_STRIKEOUT | |
101 #define DW_DT_TEXTATTRS DT_TEXTATTRS | |
102 #define DW_DT_EXTERNALLEADING DT_EXTERNALLEADING | |
103 #define DW_DT_CENTER DT_CENTER | |
104 #define DW_DT_RIGHT DT_RIGHT | |
105 #define DW_DT_TOP DT_TOP | |
106 #define DW_DT_VCENTER DT_VCENTER | |
107 #define DW_DT_BOTTOM DT_BOTTOM | |
108 #define DW_DT_HALFTONE DT_HALFTONE | |
109 #define DW_DT_MNEMONIC DT_MNEMONIC | |
110 #define DW_DT_WORDBREAK DT_WORDBREAK | |
111 #define DW_DT_ERASERECT DT_ERASERECT | |
112 | |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
113 #ifndef FCF_CLOSEBUTTON |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
114 #define FCF_CLOSEBUTTON 0x04000000L |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
115 #endif |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
116 |
3 | 117 #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
|
118 #define DW_FCF_SYSMENU (FCF_SYSMENU | FCF_CLOSEBUTTON) |
3 | 119 #define DW_FCF_MENU FCF_MENU |
120 #define DW_FCF_SIZEBORDER FCF_SIZEBORDER | |
121 #define DW_FCF_MINBUTTON FCF_MINBUTTON | |
122 #define DW_FCF_MAXBUTTON FCF_MAXBUTTON | |
123 #define DW_FCF_MINMAX FCF_MINMAX | |
124 #define DW_FCF_VERTSCROLL FCF_VERTSCROLL | |
125 #define DW_FCF_HORZSCROLL FCF_HORZSCROLL | |
126 #define DW_FCF_DLGBORDER FCF_DLGBORDER | |
127 #define DW_FCF_BORDER FCF_BORDER | |
128 #define DW_FCF_SHELLPOSITION FCF_SHELLPOSITION | |
129 #define DW_FCF_TASKLIST FCF_TASKLIST | |
130 #define DW_FCF_NOBYTEALIGN FCF_NOBYTEALIGN | |
131 #define DW_FCF_NOMOVEWITHOWNER FCF_NOMOVEWITHOWNER | |
132 #define DW_FCF_SYSMODAL FCF_SYSMODAL | |
133 #define DW_FCF_HIDEBUTTON FCF_HIDEBUTTON | |
134 #define DW_FCF_HIDEMAX FCF_HIDEMAX | |
135 #define DW_FCF_AUTOICON FCF_AUTOICON | |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
136 #define DW_FCF_MAXIMIZE WS_MAXIMIZED |
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
137 #define DW_FCF_MINIMIZE WS_MINIMIZED |
3 | 138 |
139 #define DW_CFA_BITMAPORICON CFA_BITMAPORICON | |
140 #define DW_CFA_STRING CFA_STRING | |
141 #define DW_CFA_ULONG CFA_ULONG | |
142 #define DW_CFA_TIME CFA_TIME | |
143 #define DW_CFA_DATE CFA_DATE | |
144 #define DW_CFA_CENTER CFA_CENTER | |
145 #define DW_CFA_LEFT CFA_LEFT | |
146 #define DW_CFA_RIGHT CFA_RIGHT | |
147 #define DW_CFA_HORZSEPARATOR CFA_HORZSEPARATOR | |
148 #define DW_CFA_SEPARATOR CFA_SEPARATOR | |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
149 #define DW_CFA_STRINGANDICON 0 |
3 | 150 |
69
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
151 #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
|
152 #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
|
153 |
3 | 154 #define DW_LS_MULTIPLESEL LS_MULTIPLESEL |
155 | |
156 #define DW_LIT_NONE -1 | |
157 | |
158 #define DW_MLE_CASESENSITIVE MLFSEARCH_CASESENSITIVE | |
159 | |
531
79696a852401
Added DW_POINTER_DEFAULT, this will return the pointer to the default
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
525
diff
changeset
|
160 #define DW_POINTER_DEFAULT 0 |
22
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
161 #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
|
162 #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
|
163 |
60
61869769c050
Sync with the latest DW code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
54
diff
changeset
|
164 #define DW_OS2_NEW_WINDOW 1 |
61869769c050
Sync with the latest DW code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
54
diff
changeset
|
165 |
400
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
166 /* flag values for dw_messagebox() */ |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
167 #define DW_MB_OK MB_OK |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
168 #define DW_MB_OKCANCEL MB_OKCANCEL |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
169 #define DW_MB_YESNO MB_YESNO |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
170 #define DW_MB_YESNOCANCEL MB_YESNOCANCEL |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
171 |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
172 #define DW_MB_WARNING MB_WARNING |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
173 #define DW_MB_ERROR MB_ERROR |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
174 #define DW_MB_INFORMATION MB_INFORMATION |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
175 #define DW_MB_QUESTION MB_QUERY |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
176 |
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
|
177 /* 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
|
178 #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
|
179 #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
|
180 #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
|
181 #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
|
182 #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
|
183 #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
|
184 #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
|
185 #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
|
186 #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
|
187 #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
|
188 #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
|
189 #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
|
190 #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
|
191 #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
|
192 #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
|
193 #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
|
194 #define VK_MULTIPLY ('*' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
195 #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
|
196 #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
|
197 #define VK_SUBTRACT ('-' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
198 #define VK_DECIMAL ('.' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
199 #define VK_DIVIDE ('/' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
200 #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
|
201 #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
|
202 #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
|
203 #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
|
204 #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
|
205 #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
|
206 #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
|
207 #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
|
208 #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
|
209 #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
|
210 #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
|
211 #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
|
212 #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
|
213 #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
|
214 #define VK_NUMPAD9 ('9' + 128) |
446
ab549e2f34b9
Fix some OS/2 key definitions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
441
diff
changeset
|
215 #define VK_BACK VK_BACKSPACE |
ab549e2f34b9
Fix some OS/2 key definitions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
441
diff
changeset
|
216 #define VK_LMENU VK_MENU |
ab549e2f34b9
Fix some OS/2 key definitions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
441
diff
changeset
|
217 #define VK_RMENU VK_MENU |
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
|
218 |
40
88c9c7410c22
Lots of fixes and new functions on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
39
diff
changeset
|
219 typedef struct _window_data { |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
220 PFNWP oldproc; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
221 UserData *root; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
222 HWND clickdefault; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
223 ULONG flags; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
224 void *data; |
40
88c9c7410c22
Lots of fixes and new functions on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
39
diff
changeset
|
225 } WindowData; |
88c9c7410c22
Lots of fixes and new functions on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
39
diff
changeset
|
226 |
3 | 227 typedef struct _hpixmap { |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
228 unsigned long width, height; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
229 HDC hdc; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
230 HPS hps; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
231 HBITMAP hbm; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
232 HWND handle; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
233 unsigned long transcolor; |
3 | 234 } *HPIXMAP; |
235 | |
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
|
236 typedef void *HTREEITEM; |
185
f55677513954
Updated the menu code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
182
diff
changeset
|
237 typedef HWND HMENUI; |
f55677513954
Updated the menu code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
182
diff
changeset
|
238 typedef HMODULE HMOD; |
236
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
239 typedef unsigned short UWORD; |
557
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
240 typedef unsigned long HSHM; |
671
c60a4f6cfae8
Implemented icon support on the Mac. In the process created a new HICN type.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
650
diff
changeset
|
241 typedef unsigned long HICN; |
3 | 242 |
243 extern HAB dwhab; | |
244 extern HMQ dwhmq; | |
245 #endif | |
246 | |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
247 #if defined(__MAC__) |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
248 /* MacOS specific section */ |
650
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
249 #include <pthread.h> |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
250 #include <dlfcn.h> |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
251 |
650
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
252 /* Unfortunately using Cocoa we can't include |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
253 * Cocoa.h from C code, so we have to instead |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
254 * use opaque types and use the values from |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
255 * Cocoa.h in the header here directly without |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
256 * using the symbolic names. |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
257 */ |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
258 |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
259 #define TRUE 1 |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
260 #define FALSE 0 |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
261 |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
262 typedef void *HWND; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
263 typedef void *HSHM; |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
264 typedef unsigned long ULONG; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
265 typedef long LONG; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
266 typedef unsigned short USHORT; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
267 typedef short SHORT; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
268 typedef unsigned short UWORD; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
269 typedef short WORD ; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
270 typedef unsigned char UCHAR; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
271 typedef char CHAR; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
272 typedef unsigned UINT; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
273 typedef int INT; |
650
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
274 typedef pthread_mutex_t *HMTX; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
275 typedef struct _dw_unix_event { |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
276 pthread_mutex_t mutex; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
277 pthread_cond_t event; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
278 pthread_t thread; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
279 int alive; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
280 int posted; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
281 } *HEV; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
282 typedef pthread_t DWTID; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
283 typedef void * HMOD; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
284 struct _dw_unix_shm { |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
285 int fd; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
286 char *path; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
287 int sid; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
288 int size; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
289 }; |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
290 typedef void *HTREEITEM; |
650
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
291 typedef void *HMENUI; |
671
c60a4f6cfae8
Implemented icon support on the Mac. In the process created a new HICN type.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
650
diff
changeset
|
292 typedef void *HICN; |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
293 |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
294 typedef struct _window_data { |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
295 UserData *root; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
296 HWND clickdefault; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
297 ULONG flags; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
298 void *data; |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
299 } WindowData; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
300 |
612
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
301 typedef struct _hpixmap { |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
302 unsigned long width, height; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
303 /* ?? *pixmap; */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
304 HWND handle; |
612
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
305 } *HPIXMAP; |
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
306 |
697
830e1f3672b9
Added draining mechanism for threads that don't have run loops.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
676
diff
changeset
|
307 void _dw_pool_drain(void); |
830e1f3672b9
Added draining mechanism for threads that don't have run loops.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
676
diff
changeset
|
308 |
676
9861d264925d
MLE was missing the scrollbar. Fixes for getting and setting the position.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
675
diff
changeset
|
309 #define DW_DT_LEFT 0 /* NSLeftTextAlignment */ |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
310 #define DW_DT_QUERYEXTENT 0 |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
311 #define DW_DT_UNDERSCORE 0 |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
312 #define DW_DT_STRIKEOUT 0 |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
313 #define DW_DT_TEXTATTRS 0 |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
314 #define DW_DT_EXTERNALLEADING 0 |
675
48f8efba898f
Filled in most of the remaining MLE and container functions... the remaining few
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
672
diff
changeset
|
315 #define DW_DT_CENTER 2 /* NSCenterTextAlignment */ |
48f8efba898f
Filled in most of the remaining MLE and container functions... the remaining few
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
672
diff
changeset
|
316 #define DW_DT_RIGHT 1 /* NSCenterTextAlignment */ |
676
9861d264925d
MLE was missing the scrollbar. Fixes for getting and setting the position.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
675
diff
changeset
|
317 #define DW_DT_TOP 0 |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
318 #define DW_DT_VCENTER 0 |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
319 #define DW_DT_BOTTOM 0 |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
320 #define DW_DT_HALFTONE 0 |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
321 #define DW_DT_MNEMONIC 0 |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
322 #define DW_DT_WORDBREAK 0 |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
323 #define DW_DT_ERASERECT 0 |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
324 |
650
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
325 #define DW_FCF_TITLEBAR (1 << 0) /* NSTitledWindowMask */ |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
326 #define DW_FCF_SYSMENU (1 << 1) /* NSClosableWindowMask */ |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
327 #define DW_FCF_MENU 0 |
650
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
328 #define DW_FCF_SIZEBORDER (1 << 3) /* NSResizableWindowMask */ |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
329 #define DW_FCF_MINBUTTON (1 << 2) /* NSMiniaturizableWindowMask */ |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
330 #define DW_FCF_MAXBUTTON 0 |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
331 #define DW_FCF_MINMAX (1 << 2) /* NSMiniaturizableWindowMask */ |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
332 #define DW_FCF_VERTSCROLL 0 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
333 #define DW_FCF_HORZSCROLL 0 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
334 #define DW_FCF_DLGBORDER 0 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
335 #define DW_FCF_BORDER 0 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
336 #define DW_FCF_SHELLPOSITION 0 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
337 #define DW_FCF_TASKLIST 0 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
338 #define DW_FCF_NOBYTEALIGN 0 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
339 #define DW_FCF_NOMOVEWITHOWNER 0 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
340 #define DW_FCF_SYSMODAL 0 |
650
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
341 #define DW_FCF_HIDEBUTTON 0 |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
342 #define DW_FCF_HIDEMAX 0 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
343 #define DW_FCF_AUTOICON 0 |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
344 #define DW_FCF_MAXIMIZE 0 |
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
345 #define DW_FCF_MINIMIZE 0 |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
346 |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
347 #define DW_CFA_BITMAPORICON 1 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
348 #define DW_CFA_STRING (1 << 1) |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
349 #define DW_CFA_ULONG (1 << 2) |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
350 #define DW_CFA_TIME (1 << 3) |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
351 #define DW_CFA_DATE (1 << 4) |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
352 #define DW_CFA_CENTER (1 << 5) |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
353 #define DW_CFA_LEFT (1 << 6) |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
354 #define DW_CFA_RIGHT (1 << 7) |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
355 #define DW_CFA_STRINGANDICON (1 << 8) |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
356 #define DW_CFA_HORZSEPARATOR 0 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
357 #define DW_CFA_SEPARATOR 0 |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
358 |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
359 #define DW_CRA_SELECTED 1 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
360 #define DW_CRA_CURSORED (1 << 1) |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
361 |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
362 #define DW_LS_MULTIPLESEL 1 |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
363 |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
364 #define DW_LIT_NONE -1 |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
365 |
612
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
366 #ifdef MLFSEARCH_CASESENSITIVE |
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
367 # define DW_MLE_CASESENSITIVE MLFSEARCH_CASESENSITIVE |
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
368 #else |
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
369 # define DW_MLE_CASESENSITIVE 0 |
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
370 #endif |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
371 |
531
79696a852401
Added DW_POINTER_DEFAULT, this will return the pointer to the default
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
525
diff
changeset
|
372 #define DW_POINTER_DEFAULT 0 |
671
c60a4f6cfae8
Implemented icon support on the Mac. In the process created a new HICN type.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
650
diff
changeset
|
373 #define DW_POINTER_ARROW 1 |
c60a4f6cfae8
Implemented icon support on the Mac. In the process created a new HICN type.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
650
diff
changeset
|
374 #define DW_POINTER_CLOCK 2 |
441
b559c06a76c2
Implemented more functionality on MacOS and include the platform define
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
438
diff
changeset
|
375 |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
376 #define HWND_DESKTOP ((HWND)0) |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
377 |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
378 /* flag values for dw_messagebox() */ |
441
b559c06a76c2
Implemented more functionality on MacOS and include the platform define
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
438
diff
changeset
|
379 #define DW_MB_OK (1 << 1) |
b559c06a76c2
Implemented more functionality on MacOS and include the platform define
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
438
diff
changeset
|
380 #define DW_MB_OKCANCEL (1 << 2) |
b559c06a76c2
Implemented more functionality on MacOS and include the platform define
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
438
diff
changeset
|
381 #define DW_MB_YESNO (1 << 3) |
b559c06a76c2
Implemented more functionality on MacOS and include the platform define
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
438
diff
changeset
|
382 #define DW_MB_YESNOCANCEL (1 << 4) |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
383 |
441
b559c06a76c2
Implemented more functionality on MacOS and include the platform define
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
438
diff
changeset
|
384 #define DW_MB_WARNING (1 << 10) |
b559c06a76c2
Implemented more functionality on MacOS and include the platform define
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
438
diff
changeset
|
385 #define DW_MB_ERROR (1 << 11) |
b559c06a76c2
Implemented more functionality on MacOS and include the platform define
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
438
diff
changeset
|
386 #define DW_MB_INFORMATION (1 << 12) |
b559c06a76c2
Implemented more functionality on MacOS and include the platform define
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
438
diff
changeset
|
387 #define DW_MB_QUESTION (1 << 13) |
b559c06a76c2
Implemented more functionality on MacOS and include the platform define
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
438
diff
changeset
|
388 |
612
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
389 /* Virtual Key Codes */ |
723
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
390 #define VK_LBUTTON 0xFF10 /* TODO */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
391 #define VK_RBUTTON 0xFF11 /* TODO */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
392 #define VK_CANCEL 0xFF12 /* TODO */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
393 #define VK_MBUTTON 0xFF13 /* TODO */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
394 #define VK_BACK 0x7F |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
395 #define VK_TAB 0x09 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
396 #define VK_CLEAR 71 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
397 #define VK_RETURN 3 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
398 #define VK_MENU 0xF735 /* NSMenuFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
399 #define VK_PAUSE 0xF730 /* NSPauseFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
400 #define VK_CAPITAL 57 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
401 #define VK_ESCAPE 0x1B |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
402 #define VK_SPACE ' ' |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
403 #define VK_PRIOR 0xF72C /* NSPageUpFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
404 #define VK_NEXT 0xF72D /* NSPageDownFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
405 #define VK_END 0xF72B /* NSEndFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
406 #define VK_HOME 0xF729 /* NSHomeFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
407 #define VK_LEFT 0xF702 /* NSLeftArrowFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
408 #define VK_UP 0xF700 /* NSUpArrowFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
409 #define VK_RIGHT 0xF703 /* NSRightArrowFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
410 #define VK_DOWN 0xF701 /* NSDownArrowFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
411 #define VK_SELECT 0xF741 /* NSSelectFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
412 #define VK_PRINT 0xF738 /* NSPrintFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
413 #define VK_EXECUTE 0xF742 /* NSExecuteFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
414 #define VK_SNAPSHOT 0xF72E /* NSPrintScreenFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
415 #define VK_INSERT 0xF727 /* NSInsertFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
416 #define VK_DELETE 0xF728 /* NSDeleteFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
417 #define VK_HELP 0xF746 /* NSHelpFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
418 #define VK_LWIN 55 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
419 #define VK_RWIN 0xFF14 /* TODO */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
420 #define VK_NUMPAD0 82 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
421 #define VK_NUMPAD1 83 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
422 #define VK_NUMPAD2 84 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
423 #define VK_NUMPAD3 85 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
424 #define VK_NUMPAD4 86 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
425 #define VK_NUMPAD5 87 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
426 #define VK_NUMPAD6 88 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
427 #define VK_NUMPAD7 89 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
428 #define VK_NUMPAD8 91 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
429 #define VK_NUMPAD9 92 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
430 #define VK_MULTIPLY 67 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
431 #define VK_ADD 69 |
650
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
432 #define VK_SEPARATOR 42 |
723
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
433 #define VK_SUBTRACT 78 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
434 #define VK_DECIMAL 65 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
435 #define VK_DIVIDE 75 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
436 #define VK_F1 0xF704 /* NSF1FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
437 #define VK_F2 0xF705 /* NSF2FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
438 #define VK_F3 0xF706 /* NSF3FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
439 #define VK_F4 0xF707 /* NSF4FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
440 #define VK_F5 0xF708 /* NSF5FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
441 #define VK_F6 0xF709 /* NSF6FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
442 #define VK_F7 0xF70A /* NSF7FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
443 #define VK_F8 0xF70B /* NSF8FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
444 #define VK_F9 0xF70C /* NSF9FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
445 #define VK_F10 0xF70D /* NSF10FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
446 #define VK_F11 0xF70E /* NSF11FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
447 #define VK_F12 0xF70F /* NSF12FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
448 #define VK_F13 0xF710 /* NSF13FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
449 #define VK_F14 0xF711 /* NSF14FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
450 #define VK_F15 0xF712 /* NSF15FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
451 #define VK_F16 0xF713 /* NSF16FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
452 #define VK_F17 0xF714 /* NSF17FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
453 #define VK_F18 0xF715 /* NSF18FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
454 #define VK_F19 0xF716 /* NSF19FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
455 #define VK_F20 0xF717 /* NSF20FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
456 #define VK_F21 0xF718 /* NSF21FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
457 #define VK_F22 0xF719 /* NSF22FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
458 #define VK_F23 0xF71A /* NSF23FunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
459 #define VK_F24 0xF71B /* NSF24FunctionKey */ |
650
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
460 #define VK_NUMLOCK 70 |
723
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
461 #define VK_SCROLL 0xF72F /* NSScrollLockFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
462 #define VK_LSHIFT 56 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
463 #define VK_RSHIFT 60 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
464 #define VK_LCONTROL 59 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
465 #define VK_RCONTROL 62 |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
466 #define VK_LMENU 0xF735 /* NSMenuFunctionKey */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
467 #define VK_RMENU 0xF735 /* NSMenuFunctionKey */ |
612
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
468 |
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
469 /* Key Modifiers */ |
723
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
470 #define KC_CTRL (1 << 18) /* NSControlKeyMask */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
471 #define KC_SHIFT (1 << 17) /* NSShiftKeyMask */ |
37c8d2b4cec5
Initial key press event/signal handling... does not seem to trap on all controls...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
697
diff
changeset
|
472 #define KC_ALT (1 << 19) /* NSAlternateKeyMask */ |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
473 #endif |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
474 |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
475 /* Windows specific section */ |
3 | 476 #if defined(__WIN32__) || defined(WINNT) |
477 #include <windows.h> | |
478 #include <commctrl.h> | |
479 | |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
480 #if defined(MSVC) && !defined(API) |
571
828e6a66c5c5
Add dw_listbox_list_append()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
567
diff
changeset
|
481 # ifdef __MINGW32__ |
828e6a66c5c5
Add dw_listbox_list_append()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
567
diff
changeset
|
482 # ifdef BUILD_DLL |
828e6a66c5c5
Add dw_listbox_list_append()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
567
diff
changeset
|
483 # define API APIENTRY __declspec(dllexport) |
828e6a66c5c5
Add dw_listbox_list_append()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
567
diff
changeset
|
484 # else |
828e6a66c5c5
Add dw_listbox_list_append()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
567
diff
changeset
|
485 # define API APIENTRY __declspec(dllimport) |
828e6a66c5c5
Add dw_listbox_list_append()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
567
diff
changeset
|
486 # endif |
828e6a66c5c5
Add dw_listbox_list_append()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
567
diff
changeset
|
487 # else |
828e6a66c5c5
Add dw_listbox_list_append()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
567
diff
changeset
|
488 # define API _cdecl |
828e6a66c5c5
Add dw_listbox_list_append()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
567
diff
changeset
|
489 #endif |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
490 #endif |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
491 |
3 | 492 #define DW_DT_LEFT SS_LEFT |
493 #define DW_DT_QUERYEXTENT 0 | |
494 #define DW_DT_UNDERSCORE 0 | |
495 #define DW_DT_STRIKEOUT 0 | |
496 #define DW_DT_TEXTATTRS 0 | |
497 #define DW_DT_EXTERNALLEADING 0 | |
498 #define DW_DT_CENTER SS_CENTER | |
499 #define DW_DT_RIGHT SS_RIGHT | |
500 #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
|
501 #define DW_DT_VCENTER SS_NOPREFIX |
3 | 502 #define DW_DT_BOTTOM 0 |
503 #define DW_DT_HALFTONE 0 | |
504 #define DW_DT_MNEMONIC 0 | |
505 #define DW_DT_WORDBREAK 0 | |
506 #define DW_DT_ERASERECT 0 | |
507 | |
508 #define DW_FCF_TITLEBAR WS_CAPTION | |
509 #define DW_FCF_SYSMENU WS_SYSMENU | |
510 #define DW_FCF_MENU 0 | |
511 #define DW_FCF_SIZEBORDER WS_THICKFRAME | |
512 #define DW_FCF_MINBUTTON WS_MINIMIZEBOX | |
513 #define DW_FCF_MAXBUTTON WS_MAXIMIZEBOX | |
514 #define DW_FCF_MINMAX (WS_MINIMIZEBOX|WS_MAXIMIZEBOX) | |
515 #define DW_FCF_VERTSCROLL WS_VSCROLL | |
516 #define DW_FCF_HORZSCROLL WS_HSCROLL | |
517 #define DW_FCF_DLGBORDER WS_DLGFRAME | |
518 #define DW_FCF_BORDER WS_BORDER | |
519 #define DW_FCF_SHELLPOSITION 0 | |
520 #define DW_FCF_TASKLIST WS_VSCROLL | |
521 #define DW_FCF_NOBYTEALIGN 0 | |
522 #define DW_FCF_NOMOVEWITHOWNER 0 | |
523 #define DW_FCF_SYSMODAL 0 | |
524 #define DW_FCF_HIDEBUTTON WS_MINIMIZEBOX | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
525 #define DW_FCF_HIDEMAX (WS_MINIMIZEBOX|WS_MAXIMIZEBOX) |
3 | 526 #define DW_FCF_AUTOICON 0 |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
527 #define DW_FCF_MAXIMIZE WS_MAXIMIZE |
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
528 #define DW_FCF_MINIMIZE WS_MINIMIZE |
3 | 529 |
530 #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
|
531 #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
|
532 #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
|
533 #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
|
534 #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
|
535 #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
|
536 #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
|
537 #define DW_CFA_RIGHT (1 << 7) |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
538 #define DW_CFA_STRINGANDICON (1 << 8) |
3 | 539 #define DW_CFA_HORZSEPARATOR 0 |
540 #define DW_CFA_SEPARATOR 0 | |
541 | |
69
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
542 #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
|
543 #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
|
544 |
3 | 545 #define DW_LS_MULTIPLESEL LBS_MULTIPLESEL |
546 | |
547 #define DW_LIT_NONE -1 | |
548 | |
549 #define DW_MLE_CASESENSITIVE 1 | |
550 | |
531
79696a852401
Added DW_POINTER_DEFAULT, this will return the pointer to the default
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
525
diff
changeset
|
551 #define DW_POINTER_DEFAULT 0 |
22
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
552 #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
|
553 #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
|
554 |
400
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
555 /* flag values for dw_messagebox() */ |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
556 #define DW_MB_OK MB_OK |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
557 #define DW_MB_OKCANCEL MB_OKCANCEL |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
558 #define DW_MB_YESNO MB_YESNO |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
559 #define DW_MB_YESNOCANCEL MB_YESNOCANCEL |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
560 |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
561 #define DW_MB_WARNING MB_ICONWARNING |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
562 #define DW_MB_ERROR MB_ICONERROR |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
563 #define DW_MB_INFORMATION MB_ICONINFORMATION |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
564 #define DW_MB_QUESTION MB_ICONQUESTION |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
565 |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
566 /* Key Modifiers */ |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
567 #define KC_CTRL (1) |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
568 #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
|
569 #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
|
570 |
3 | 571 #define STATICCLASSNAME "STATIC" |
572 #define COMBOBOXCLASSNAME "COMBOBOX" | |
573 #define LISTBOXCLASSNAME "LISTBOX" | |
574 #define BUTTONCLASSNAME "BUTTON" | |
575 #define POPUPMENUCLASSNAME "POPUPMENU" | |
576 #define EDITCLASSNAME "EDIT" | |
577 #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
|
578 #define SCROLLBARCLASSNAME "SCROLLBAR" |
3 | 579 |
580 #define ClassName "dynamicwindows" | |
581 #define SplitbarClassName "dwsplitbar" | |
582 #define ObjectClassName "dwobjectclass" | |
584
420c6c94abc7
Added dw_html_* functionality for embedding HTML pages in Dynamic Windows
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
571
diff
changeset
|
583 #define BrowserClassName "dwbrowserclass" |
3 | 584 #define DefaultFont NULL |
585 | |
586 typedef struct _color { | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
587 int fore; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
588 int back; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
589 HWND combo, buddy; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
590 int user; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
591 int vcenter; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
592 HWND clickdefault; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
593 HBRUSH hbrush; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
594 HFONT hfont; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
595 char fontname[128]; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
596 WNDPROC pOldProc; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
597 UserData *root; |
3 | 598 } ColorInfo; |
599 | |
600 typedef struct _notebookpage { | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
601 ColorInfo cinfo; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
602 TC_ITEM item; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
603 HWND hwnd; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
604 int realid; |
3 | 605 } NotebookPage; |
606 | |
607 typedef HANDLE HMTX; | |
608 typedef HANDLE HEV; | |
157
a07dd2e819f3
Added module support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
155
diff
changeset
|
609 typedef HANDLE HMOD; |
557
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
610 typedef HANDLE HSHM; |
671
c60a4f6cfae8
Implemented icon support on the Mac. In the process created a new HICN type.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
650
diff
changeset
|
611 typedef unsigned long HICN; |
3 | 612 |
613 typedef struct _container { | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
614 ColorInfo cinfo; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
615 ULONG *flags; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
616 WNDPROC pOldProc; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
617 ULONG columns; |
3 | 618 } ContainerInfo; |
619 | |
620 typedef struct _hpixmap { | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
621 unsigned long width, height; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
622 HBITMAP hbm; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
623 HDC hdc; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
624 unsigned long transcolor; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
625 HWND handle; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
626 void *bits; |
3 | 627 } *HPIXMAP; |
628 | |
238
13d3de3f1e83
Rewrote the menu code to not return structs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
236
diff
changeset
|
629 typedef HWND HMENUI; |
3 | 630 #endif |
631 | |
632 typedef struct _item { | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
633 /* Item type - Box or Item */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
634 int type; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
635 /* Handle to Frame or Window */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
636 HWND hwnd; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
637 /* Width and Height of static size */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
638 int width, height, origwidth, origheight; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
639 /* Size Type - Static or Expand */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
640 int hsize, vsize; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
641 /* Padding */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
642 int pad; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
643 /* Ratio of current item */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
644 float xratio, yratio; |
3 | 645 } Item; |
646 | |
647 typedef struct _box { | |
648 #if defined(__WIN32__) || defined(WINNT) | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
649 ColorInfo cinfo; |
24
d9e87e8bcf1d
Updated dynamic windows to build with EMX.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
22
diff
changeset
|
650 #elif defined(__OS2__) || defined(__EMX__) |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
651 PFNWP oldproc; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
652 UserData *root; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
653 HWND hwndtitle, hwnd; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
654 int titlebar; |
3 | 655 #endif |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
656 /* Number of items in the box */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
657 int count; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
658 /* Box type - horizontal or vertical */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
659 int type; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
660 /* Padding */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
661 int pad, parentpad, grouppadx, grouppady; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
662 /* Groupbox */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
663 HWND grouphwnd; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
664 /* Default item */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
665 HWND defaultitem; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
666 /* Used as temporary storage in the calculation stage */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
667 int upx, upy, minheight, minwidth; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
668 /* Ratio in this box */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
669 float xratio, yratio, parentxratio, parentyratio; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
670 /* Used for calculating individual item ratios */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
671 int width, height; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
672 /* Any combinations of flags describing the box */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
673 unsigned long flags; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
674 /* Array of item structures */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
675 struct _item *items; |
3 | 676 } Box; |
677 | |
678 typedef struct _bubblebutton { | |
679 #if defined(__WIN32__) || defined(WINNT) | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
680 ColorInfo cinfo; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
681 int checkbox; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
682 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
|
683 #endif |
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
684 #if defined(__OS2__) || defined(__EMX__) |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
685 PFNWP pOldProc; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
686 UserData *root; |
3 | 687 #endif |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
688 unsigned long id; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
689 char bubbletext[BUBBLE_HELP_MAX]; |
3 | 690 } BubbleButton; |
691 | |
692 #else | |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
693 /* GTK Specific section */ |
3 | 694 #include <gtk/gtk.h> |
634
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
695 #ifdef GDK_WINDOWING_X11 |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
696 # include <gdk/gdkx.h> |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
697 #else |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
698 # include <gdk/gdk.h> |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
699 #endif |
3 | 700 #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
|
701 #include <gdk/gdkkeysyms.h> |
3 | 702 #include <pthread.h> |
634
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
703 #if !defined(GDK_WINDOWING_WIN32) |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
704 # include <dlfcn.h> |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
705 #endif |
3 | 706 |
707 #define DW_DT_LEFT 1 | |
708 #define DW_DT_UNDERSCORE (1 << 1) | |
709 #define DW_DT_STRIKEOUT (1 << 2) | |
710 #define DW_DT_CENTER (1 << 3) | |
711 #define DW_DT_RIGHT (1 << 4) | |
712 #define DW_DT_TOP (1 << 5) | |
713 #define DW_DT_VCENTER (1 << 6) | |
714 #define DW_DT_BOTTOM (1 << 7) | |
715 #define DW_DT_HALFTONE (1 << 8) | |
716 #define DW_DT_MNEMONIC (1 << 9) | |
717 #define DW_DT_WORDBREAK (1 << 10) | |
718 #define DW_DT_ERASERECT (1 << 11) | |
719 | |
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
|
720 /* 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
|
721 #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
|
722 #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
|
723 #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
|
724 |
3 | 725 #define DW_FCF_TITLEBAR 1 |
726 #define DW_FCF_SYSMENU (1 << 1) | |
727 #define DW_FCF_MENU (1 << 2) | |
728 #define DW_FCF_SIZEBORDER (1 << 3) | |
729 #define DW_FCF_MINBUTTON (1 << 4) | |
730 #define DW_FCF_MAXBUTTON (1 << 5) | |
731 #define DW_FCF_MINMAX (1 << 6) | |
732 #define DW_FCF_VERTSCROLL (1 << 7) | |
733 #define DW_FCF_HORZSCROLL (1 << 8) | |
734 #define DW_FCF_DLGBORDER (1 << 9) | |
735 #define DW_FCF_BORDER (1 << 10) | |
736 #define DW_FCF_SHELLPOSITION (1 << 11) | |
737 #define DW_FCF_TASKLIST (1 << 12) | |
738 #define DW_FCF_NOBYTEALIGN (1 << 13) | |
739 #define DW_FCF_NOMOVEWITHOWNER (1 << 14) | |
740 #define DW_FCF_SYSMODAL (1 << 15) | |
741 #define DW_FCF_HIDEBUTTON (1 << 16) | |
742 #define DW_FCF_HIDEMAX (1 << 17) | |
743 #define DW_FCF_AUTOICON (1 << 18) | |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
744 #define DW_FCF_MAXIMIZE (1 << 19) |
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
745 #define DW_FCF_MINIMIZE (1 << 20) |
3 | 746 |
747 #define DW_CFA_BITMAPORICON 1 | |
748 #define DW_CFA_STRING (1 << 1) | |
749 #define DW_CFA_ULONG (1 << 2) | |
750 #define DW_CFA_TIME (1 << 3) | |
751 #define DW_CFA_DATE (1 << 4) | |
752 #define DW_CFA_CENTER (1 << 5) | |
753 #define DW_CFA_LEFT (1 << 6) | |
754 #define DW_CFA_RIGHT (1 << 7) | |
755 #define DW_CFA_HORZSEPARATOR (1 << 8) | |
756 #define DW_CFA_SEPARATOR (1 << 9) | |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
757 #define DW_CFA_STRINGANDICON (1 << 10) |
3 | 758 |
69
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
759 #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
|
760 #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
|
761 |
3 | 762 #define DW_LS_MULTIPLESEL 1 |
763 | |
764 #define DW_LIT_NONE -1 | |
765 | |
766 #define DW_MLE_CASESENSITIVE 1 | |
767 | |
532
1e60e98a9168
Forgot DW_POINTER_DEFAULT on Unix.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
531
diff
changeset
|
768 #define DW_POINTER_DEFAULT 0 |
390
2dbed2673df0
Change mouse cursor definitions under GTK. DW_POINTER_ARROW now uses "default"
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
384
diff
changeset
|
769 #define DW_POINTER_ARROW GDK_TOP_LEFT_ARROW |
2dbed2673df0
Change mouse cursor definitions under GTK. DW_POINTER_ARROW now uses "default"
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
384
diff
changeset
|
770 #define DW_POINTER_CLOCK GDK_WATCH |
22
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
771 |
3 | 772 #define HWND_DESKTOP ((HWND)0) |
773 | |
400
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
774 /* flag values for dw_messagebox() */ |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
775 #define DW_MB_OK (1 << 1) |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
776 #define DW_MB_OKCANCEL (1 << 2) |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
777 #define DW_MB_YESNO (1 << 3) |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
778 #define DW_MB_YESNOCANCEL (1 << 4) |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
779 |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
780 #define DW_MB_WARNING (1 << 10) |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
781 #define DW_MB_ERROR (1 << 11) |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
782 #define DW_MB_INFORMATION (1 << 12) |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
783 #define DW_MB_QUESTION (1 << 13) |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
784 |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
785 /* Virtual Key Codes */ |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
786 #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
|
787 #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
|
788 #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
|
789 #define VK_MBUTTON GDK_Pointer_Button2 |
384
cbf4df4bc2f1
Fix typo with backspace key name under GTK
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
369
diff
changeset
|
790 #define VK_BACK GDK_BackSpace |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
791 #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
|
792 #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
|
793 #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
|
794 #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
|
795 #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
|
796 #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
|
797 #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
|
798 #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
|
799 #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
|
800 #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
|
801 #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
|
802 #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
|
803 #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
|
804 #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
|
805 #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
|
806 #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
|
807 #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
|
808 #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
|
809 #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
|
810 #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
|
811 #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
|
812 #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
|
813 #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
|
814 #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
|
815 #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
|
816 #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
|
817 #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
|
818 #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
|
819 #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
|
820 #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
|
821 #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
|
822 #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
|
823 #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
|
824 #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
|
825 #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
|
826 #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
|
827 #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
|
828 #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
|
829 #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
|
830 #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
|
831 #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
|
832 #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
|
833 #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
|
834 #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
|
835 #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
|
836 #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
|
837 #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
|
838 #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
|
839 #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
|
840 #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
|
841 #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
|
842 #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
|
843 #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
|
844 #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
|
845 #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
|
846 #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
|
847 #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
|
848 #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
|
849 #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
|
850 #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
|
851 #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
|
852 #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
|
853 #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
|
854 #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
|
855 #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
|
856 #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
|
857 #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
|
858 #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
|
859 #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
|
860 #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
|
861 #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
|
862 #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
|
863 #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
|
864 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
865 /* Key Modifiers */ |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
866 #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
|
867 #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
|
868 #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
|
869 |
3 | 870 typedef GtkWidget *HWND; |
38
538db2a48bac
Added typecast to MPARAM.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
34
diff
changeset
|
871 #ifndef _ENVRNMNT_H |
3 | 872 typedef unsigned long ULONG; |
38
538db2a48bac
Added typecast to MPARAM.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
34
diff
changeset
|
873 #endif |
3 | 874 typedef long LONG; |
875 typedef unsigned short USHORT; | |
876 typedef short SHORT; | |
236
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
877 typedef unsigned short UWORD; |
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
878 typedef short WORD ; |
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
879 typedef unsigned char UCHAR; |
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
880 typedef char CHAR; |
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
881 typedef unsigned UINT; |
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
882 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
|
883 typedef pthread_mutex_t *HMTX; |
3 | 884 typedef struct _dw_unix_event { |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
885 pthread_mutex_t mutex; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
886 pthread_cond_t event; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
887 pthread_t thread; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
888 int alive; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
889 int posted; |
3 | 890 } *HEV; |
891 typedef pthread_t DWTID; | |
157
a07dd2e819f3
Added module support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
155
diff
changeset
|
892 typedef void * HMOD; |
558
05060ce4d6ae
Fixes for the new shared memory and named event code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
557
diff
changeset
|
893 struct _dw_unix_shm { |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
894 int fd; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
895 char *path; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
896 int sid; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
897 int size; |
558
05060ce4d6ae
Fixes for the new shared memory and named event code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
557
diff
changeset
|
898 }; |
3 | 899 |
900 typedef struct _hpixmap { | |
633
87db549e79bc
Add dw_polygon_draw() to draw closed polygons.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
624
diff
changeset
|
901 unsigned long width, height; |
87db549e79bc
Add dw_polygon_draw() to draw closed polygons.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
624
diff
changeset
|
902 GdkPixmap *pixmap; /* the actual image */ |
87db549e79bc
Add dw_polygon_draw() to draw closed polygons.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
624
diff
changeset
|
903 GdkBitmap *bitmap; /* if not null, the image mask representing the transparency mask */ |
87db549e79bc
Add dw_polygon_draw() to draw closed polygons.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
624
diff
changeset
|
904 HWND handle; |
3 | 905 } *HPIXMAP; |
906 | |
185
f55677513954
Updated the menu code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
182
diff
changeset
|
907 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
|
908 typedef void *HTREEITEM; |
558
05060ce4d6ae
Fixes for the new shared memory and named event code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
557
diff
changeset
|
909 typedef void *HSHM; |
671
c60a4f6cfae8
Implemented icon support on the Mac. In the process created a new HICN type.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
650
diff
changeset
|
910 typedef unsigned long HICN; |
185
f55677513954
Updated the menu code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
182
diff
changeset
|
911 |
3 | 912 typedef struct _resource_struct { |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
913 long resource_max, *resource_id; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
914 char **resource_data; |
3 | 915 } DWResources; |
916 | |
917 #if !defined(DW_RESOURCES) || defined(BUILD_DLL) | |
918 static DWResources _resources = { 0, 0, 0 }; | |
919 #else | |
920 extern DWResources _resources; | |
921 #endif | |
922 | |
923 #endif | |
924 | |
925 #if !defined(__OS2__) && !defined(__EMX__) | |
926 typedef struct _CDATE | |
927 { | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
928 UCHAR day; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
929 UCHAR month; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
930 USHORT year; |
3 | 931 } CDATE; |
932 typedef CDATE *PCDATE; | |
933 | |
934 typedef struct _CTIME | |
935 { | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
936 UCHAR hours; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
937 UCHAR minutes; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
938 UCHAR seconds; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
939 UCHAR ucReserved; |
3 | 940 } CTIME; |
941 typedef CTIME *PCTIME; | |
942 #endif | |
943 | |
634
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
944 #if defined(__OS2__) || (defined(__WIN32__) && !defined(GDK_WINDOWING_WIN32)) || (defined(WINNT) && !defined(GDK_WINDOWING_WIN32)) || defined(__EMX__) |
3 | 945 typedef unsigned long DWTID; |
946 #endif | |
947 | |
948 typedef struct _dwenv { | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
949 /* Operating System Name and DW Build Date/Time */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
950 char osName[30], buildDate[30], buildTime[30]; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
951 /* Versions and builds */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
952 short MajorVersion, MinorVersion, MajorBuild, MinorBuild; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
953 /* Dynamic Window version */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
954 short DWMajorVersion, DWMinorVersion, DWSubVersion; |
3 | 955 } DWEnv; |
956 | |
957 | |
958 typedef struct _dwexpose { | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
959 int x, y; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
960 int width, height; |
3 | 961 } DWExpose; |
962 | |
963 typedef struct _dwdialog { | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
964 HEV eve; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
965 int done; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
966 int method; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
967 void *data, *result; |
3 | 968 } DWDialog; |
969 | |
970 #define DW_SIGNAL_FUNC(a) ((void *)a) | |
971 | |
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
|
972 #define DW_DESKTOP HWND_DESKTOP |
7
005fa766e8c2
Updates to latest build.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
973 #define DW_MINIMIZED 1 |
005fa766e8c2
Updates to latest build.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
974 |
3 | 975 #define DW_BUTTON1_MASK 1 |
976 #define DW_BUTTON2_MASK (1 << 1) | |
977 #define DW_BUTTON3_MASK (1 << 2) | |
978 | |
979 #define DW_EXEC_CON 0 | |
980 #define DW_EXEC_GUI 1 | |
981 | |
449
787cc1e27897
Add support for directory browsing under Win32. DW_DIRECTORY_OPEN can be
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
446
diff
changeset
|
982 #define DW_FILE_OPEN 0 |
787cc1e27897
Add support for directory browsing under Win32. DW_DIRECTORY_OPEN can be
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
446
diff
changeset
|
983 #define DW_FILE_SAVE 1 |
787cc1e27897
Add support for directory browsing under Win32. DW_DIRECTORY_OPEN can be
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
446
diff
changeset
|
984 #define DW_DIRECTORY_OPEN 2 |
3 | 985 |
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
|
986 #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
|
987 #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
|
988 |
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
|
989 /* 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
|
990 #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
|
991 #define BOXVERT DW_VERT |
3 | 992 |
22
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
993 #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
|
994 #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
|
995 #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
|
996 #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
|
997 |
400
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
998 /* return values for dw_messagebox() */ |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
999 #define DW_MB_RETURN_OK 0 |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1000 #define DW_MB_RETURN_YES 1 |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1001 #define DW_MB_RETURN_NO 0 |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1002 #define DW_MB_RETURN_CANCEL 2 |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1003 |
3 | 1004 #define DW_PIXMAP_WIDTH(x) (x ? x->width : 0) |
1005 #define DW_PIXMAP_HEIGHT(x) (x ? x->height : 0) | |
1006 | |
62
2be5174bdb5d
Sync with latest DW code. Tab and RGB fixes.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
61
diff
changeset
|
1007 #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
|
1008 #define DW_RGB_TRANSPARENT (0x0F000000) |
3 | 1009 #define DW_RGB_MASK (0x00FFFFFF) |
1010 #define DW_RED_MASK (0x000000FF) | |
1011 #define DW_GREEN_MASK (0x0000FF00) | |
1012 #define DW_BLUE_MASK (0x00FF0000) | |
1013 #define DW_RED_VALUE(a) (a & DW_RED_MASK) | |
1014 #define DW_GREEN_VALUE(a) ((a & DW_GREEN_MASK) >> 8) | |
1015 #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
|
1016 #define DW_RGB(a, b, c) (0xF0000000 | a | b << 8 | c << 16) |
3 | 1017 |
325
e5f0613b65cd
Added DW_MENU_SEPARATOR.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
317
diff
changeset
|
1018 #define DW_MENU_SEPARATOR "" |
441
b559c06a76c2
Implemented more functionality on MacOS and include the platform define
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
438
diff
changeset
|
1019 #define DW_NOMENU 0 |
325
e5f0613b65cd
Added DW_MENU_SEPARATOR.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
317
diff
changeset
|
1020 |
557
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
1021 /* Return value error codes */ |
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
1022 #define DW_ERROR_NONE 0 |
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
1023 #define DW_ERROR_GENERAL 1 |
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
1024 #define DW_ERROR_TIMEOUT 2 |
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
1025 #define DW_ERROR_NON_INIT 3 |
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
1026 #define DW_ERROR_NO_MEM 4 |
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
1027 #define DW_ERROR_INTERRUPT 5 |
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
1028 |
584
420c6c94abc7
Added dw_html_* functionality for embedding HTML pages in Dynamic Windows
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
571
diff
changeset
|
1029 /* Embedded HTML actions */ |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1030 #define DW_HTML_GOBACK 0 |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1031 #define DW_HTML_GOFORWARD 1 |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1032 #define DW_HTML_GOHOME 2 |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1033 #define DW_HTML_SEARCH 3 |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1034 #define DW_HTML_RELOAD 4 |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1035 #define DW_HTML_STOP 5 |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1036 #define DW_HTML_PRINT 6 |
584
420c6c94abc7
Added dw_html_* functionality for embedding HTML pages in Dynamic Windows
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
571
diff
changeset
|
1037 |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1038 #ifndef API |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1039 #define API |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1040 #endif |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1041 |
175
d78d08440246
Use _System/_stdcall for callbacks.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
174
diff
changeset
|
1042 #define DWSIGNAL API |
d78d08440246
Use _System/_stdcall for callbacks.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
174
diff
changeset
|
1043 |
492
9354c460d76b
Added some type declarations to allow better interoperability with Regina
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
487
diff
changeset
|
1044 /* Let other APIs know what types we've defined, |
9354c460d76b
Added some type declarations to allow better interoperability with Regina
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
487
diff
changeset
|
1045 * Regina REXX in particular, on Unix. |
9354c460d76b
Added some type declarations to allow better interoperability with Regina
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
487
diff
changeset
|
1046 */ |
9354c460d76b
Added some type declarations to allow better interoperability with Regina
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
487
diff
changeset
|
1047 #define ULONG_TYPEDEFED 1 |
9354c460d76b
Added some type declarations to allow better interoperability with Regina
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
487
diff
changeset
|
1048 #define LONG_TYPEDEFED 1 |
9354c460d76b
Added some type declarations to allow better interoperability with Regina
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
487
diff
changeset
|
1049 #define USHORT_TYPEDEFED 1 |
9354c460d76b
Added some type declarations to allow better interoperability with Regina
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
487
diff
changeset
|
1050 #define SHORT_TYPEDEFED 1 |
9354c460d76b
Added some type declarations to allow better interoperability with Regina
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
487
diff
changeset
|
1051 #define UWORD_TYPEDEFED 1 |
9354c460d76b
Added some type declarations to allow better interoperability with Regina
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
487
diff
changeset
|
1052 #define WORD_TYPEDEFED 1 |
9354c460d76b
Added some type declarations to allow better interoperability with Regina
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
487
diff
changeset
|
1053 #define UCHAR_TYPEDEFED 1 |
9354c460d76b
Added some type declarations to allow better interoperability with Regina
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
487
diff
changeset
|
1054 #define CHAR_TYPEDEFED 1 |
9354c460d76b
Added some type declarations to allow better interoperability with Regina
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
487
diff
changeset
|
1055 #define UINT_TYPEDEFED 1 |
9354c460d76b
Added some type declarations to allow better interoperability with Regina
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
487
diff
changeset
|
1056 #define INT_TYPEDEFED 1 |
9354c460d76b
Added some type declarations to allow better interoperability with Regina
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
487
diff
changeset
|
1057 |
3 | 1058 /* Public function prototypes */ |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1059 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
|
1060 void API dw_box_pack_end(HWND box, HWND item, int width, int height, int hsize, int vsize, int pad); |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
1061 #if !defined(__OS2__) && !defined(__WIN32__) && !defined(__EMX__) && !defined(__MAC__) |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1062 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
|
1063 #define dw_init(a, b, c) dw_int_init(&_resources, a, &b, &c) |
3 | 1064 #else |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1065 int API dw_init(int newthread, int argc, char *argv[]); |
3 | 1066 #endif |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1067 void API dw_main(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1068 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
|
1069 void API dw_main_iteration(void); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1070 void API dw_free(void *ptr); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1071 int API dw_window_show(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1072 int API dw_window_hide(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1073 int API dw_window_minimize(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1074 int API dw_window_raise(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1075 int API dw_window_lower(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1076 int API dw_window_destroy(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1077 void API dw_window_redraw(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1078 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
|
1079 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
|
1080 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
|
1081 HWND API dw_box_new(int type, int pad); |
634
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
1082 #ifdef INCOMPLETE |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
1083 HWND API dw_scrollbox_new(int type, int pad); |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
1084 #endif |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1085 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
|
1086 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
|
1087 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
|
1088 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
|
1089 HWND API dw_bitmapbutton_new_from_file(char *text, unsigned long id, char *filename); |
612
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
1090 HWND API dw_bitmapbutton_new_from_data(char *text, unsigned long id, char *str, int len); |
350
2216e65ad2ae
Removed slider flags and container selection flags from the header file.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
1091 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
|
1092 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
|
1093 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
|
1094 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
|
1095 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
|
1096 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
|
1097 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
|
1098 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
|
1099 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
|
1100 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
|
1101 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
|
1102 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
|
1103 HWND API dw_slider_new(int vertical, int increments, ULONG id); |
511
80dbd5a1f403
Removed the increments parameter from dw_scrollbar_new().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
510
diff
changeset
|
1104 HWND API dw_scrollbar_new(int vertical, ULONG id); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1105 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
|
1106 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
|
1107 void API dw_listbox_append(HWND handle, char *text); |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1108 void API dw_listbox_insert(HWND handle, char *text, int pos); |
571
828e6a66c5c5
Add dw_listbox_list_append()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
567
diff
changeset
|
1109 void API dw_listbox_list_append(HWND handle, char **text, int count); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1110 void API dw_listbox_clear(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1111 int API dw_listbox_count(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1112 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
|
1113 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
|
1114 void API dw_listbox_delete(HWND handle, int index); |
510
710f82598210
Change function names to be inline with Mark Hessling's Rexx/DW.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
508
diff
changeset
|
1115 void API dw_listbox_get_text(HWND handle, unsigned int index, char *buffer, unsigned int length); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1116 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
|
1117 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
|
1118 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
|
1119 void API dw_percent_set_pos(HWND handle, unsigned int position); |
510
710f82598210
Change function names to be inline with Mark Hessling's Rexx/DW.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
508
diff
changeset
|
1120 unsigned int API dw_slider_get_pos(HWND handle); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1121 void API dw_slider_set_pos(HWND handle, unsigned int position); |
510
710f82598210
Change function names to be inline with Mark Hessling's Rexx/DW.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
508
diff
changeset
|
1122 unsigned int API dw_scrollbar_get_pos(HWND handle); |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
185
diff
changeset
|
1123 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
|
1124 void API dw_scrollbar_set_range(HWND handle, unsigned int range, unsigned int visible); |
634
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
1125 void API dw_window_set_pos(HWND handle, long x, long y); |
510
710f82598210
Change function names to be inline with Mark Hessling's Rexx/DW.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
508
diff
changeset
|
1126 void API dw_window_set_size(HWND handle, unsigned long width, unsigned long height); |
634
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
1127 void API dw_window_set_pos_size(HWND handle, long x, long y, unsigned long width, unsigned long height); |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
1128 void API dw_window_get_pos_size(HWND handle, long *x, long *y, unsigned long *width, unsigned long *height); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1129 void API dw_window_set_style(HWND handle, unsigned long style, unsigned long mask); |
672
388f2a48aaae
Missed one function to typedef. Fixed errors in the test program and switched to using
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
671
diff
changeset
|
1130 void API dw_window_set_icon(HWND handle, HICN icon); |
278
df0665ba147f
Initial code for dw_bitmapbutton_new_from_file and added filename parameter
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
267
diff
changeset
|
1131 void API dw_window_set_bitmap(HWND handle, unsigned long id, char *filename); |
612
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
1132 void API dw_window_set_bitmap_from_data(HWND handle, unsigned long id, char *data, int len); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1133 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
|
1134 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
|
1135 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
|
1136 void API dw_window_disable(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1137 void API dw_window_enable(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1138 void API dw_window_capture(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1139 void API dw_window_release(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1140 void API dw_window_reparent(HWND handle, HWND newparent); |
510
710f82598210
Change function names to be inline with Mark Hessling's Rexx/DW.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
508
diff
changeset
|
1141 void API dw_window_set_pointer(HWND handle, int pointertype); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1142 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
|
1143 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
|
1144 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
|
1145 void API dw_mle_export(HWND handle, char *buffer, int startpoint, int length); |
510
710f82598210
Change function names to be inline with Mark Hessling's Rexx/DW.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
508
diff
changeset
|
1146 void API dw_mle_get_size(HWND handle, unsigned long *bytes, unsigned long *lines); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1147 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
|
1148 void API dw_mle_clear(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1149 void API dw_mle_freeze(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1150 void API dw_mle_thaw(HWND handle); |
510
710f82598210
Change function names to be inline with Mark Hessling's Rexx/DW.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
508
diff
changeset
|
1151 void API dw_mle_set_cursor(HWND handle, int point); |
513
7755599311d4
Fixes search and replace errors.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
511
diff
changeset
|
1152 void API dw_mle_set_visible(HWND handle, int line); |
7755599311d4
Fixes search and replace errors.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
511
diff
changeset
|
1153 void API dw_mle_set_editable(HWND handle, int state); |
7755599311d4
Fixes search and replace errors.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
511
diff
changeset
|
1154 void API dw_mle_set_word_wrap(HWND handle, int state); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1155 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
|
1156 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
|
1157 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
|
1158 void API dw_entryfield_set_limit(HWND handle, ULONG limit); |
510
710f82598210
Change function names to be inline with Mark Hessling's Rexx/DW.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
508
diff
changeset
|
1159 long API dw_spinbutton_get_pos(HWND handle); |
710f82598210
Change function names to be inline with Mark Hessling's Rexx/DW.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
508
diff
changeset
|
1160 int API dw_checkbox_get(HWND handle); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1161 void API dw_checkbox_set(HWND handle, int value); |
671
c60a4f6cfae8
Implemented icon support on the Mac. In the process created a new HICN type.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
650
diff
changeset
|
1162 HTREEITEM API dw_tree_insert(HWND handle, char *title, HICN icon, HTREEITEM parent, void *itemdata); |
c60a4f6cfae8
Implemented icon support on the Mac. In the process created a new HICN type.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
650
diff
changeset
|
1163 HTREEITEM API dw_tree_insert_after(HWND handle, HTREEITEM item, char *title, HICN icon, HTREEITEM parent, void *itemdata); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1164 void API dw_tree_clear(HWND handle); |
510
710f82598210
Change function names to be inline with Mark Hessling's Rexx/DW.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
508
diff
changeset
|
1165 void API dw_tree_item_delete(HWND handle, HTREEITEM item); |
671
c60a4f6cfae8
Implemented icon support on the Mac. In the process created a new HICN type.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
650
diff
changeset
|
1166 void API dw_tree_item_change(HWND handle, HTREEITEM item, char *title, HICN icon); |
510
710f82598210
Change function names to be inline with Mark Hessling's Rexx/DW.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
508
diff
changeset
|
1167 void API dw_tree_item_expand(HWND handle, HTREEITEM item); |
710f82598210
Change function names to be inline with Mark Hessling's Rexx/DW.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
508
diff
changeset
|
1168 void API dw_tree_item_collapse(HWND handle, HTREEITEM item); |
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
|
1169 void API dw_tree_item_select(HWND handle, HTREEITEM item); |
513
7755599311d4
Fixes search and replace errors.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
511
diff
changeset
|
1170 void API dw_tree_item_set_data(HWND handle, HTREEITEM item, void *itemdata); |
510
710f82598210
Change function names to be inline with Mark Hessling's Rexx/DW.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
508
diff
changeset
|
1171 void * API dw_tree_item_get_data(HWND handle, HTREEITEM item); |
478
ea099ba917c6
Added two new tree functions, get_title and get_parent and finished the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
471
diff
changeset
|
1172 char * API dw_tree_get_title(HWND handle, HTREEITEM item); |
ea099ba917c6
Added two new tree functions, get_title and get_parent and finished the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
471
diff
changeset
|
1173 HTREEITEM API dw_tree_get_parent(HWND handle, HTREEITEM item); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1174 int API dw_container_setup(HWND handle, unsigned long *flags, char **titles, int count, int separator); |
671
c60a4f6cfae8
Implemented icon support on the Mac. In the process created a new HICN type.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
650
diff
changeset
|
1175 HICN API dw_icon_load(unsigned long module, unsigned long id); |
c60a4f6cfae8
Implemented icon support on the Mac. In the process created a new HICN type.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
650
diff
changeset
|
1176 HICN API dw_icon_load_from_file(char *filename); |
c60a4f6cfae8
Implemented icon support on the Mac. In the process created a new HICN type.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
650
diff
changeset
|
1177 HICN API dw_icon_load_from_data(char *data, int len); |
c60a4f6cfae8
Implemented icon support on the Mac. In the process created a new HICN type.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
650
diff
changeset
|
1178 void API dw_icon_free(HICN handle); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1179 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
|
1180 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
|
1181 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
|
1182 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
|
1183 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
|
1184 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
|
1185 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
|
1186 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
|
1187 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
|
1188 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
|
1189 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
|
1190 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
|
1191 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
|
1192 void API dw_container_optimize(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1193 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
|
1194 void API dw_filesystem_set_item(HWND handle, void *pointer, int column, int row, void *data); |
671
c60a4f6cfae8
Implemented icon support on the Mac. In the process created a new HICN type.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
650
diff
changeset
|
1195 void API dw_filesystem_set_file(HWND handle, void *pointer, int row, char *filename, HICN icon); |
503
f3ed8dda02f8
Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
494
diff
changeset
|
1196 void API dw_filesystem_change_item(HWND handle, int column, int row, void *data); |
671
c60a4f6cfae8
Implemented icon support on the Mac. In the process created a new HICN type.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
650
diff
changeset
|
1197 void API dw_filesystem_change_file(HWND handle, int row, char *filename, HICN icon); |
508
078a40ba2e41
Added dw_container_get_column_type and dw_filesystem_get_column_type.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
507
diff
changeset
|
1198 int API dw_container_get_column_type(HWND handle, int column); |
078a40ba2e41
Added dw_container_get_column_type and dw_filesystem_get_column_type.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
507
diff
changeset
|
1199 int API dw_filesystem_get_column_type(HWND handle, int column); |
671
c60a4f6cfae8
Implemented icon support on the Mac. In the process created a new HICN type.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
650
diff
changeset
|
1200 void API dw_taskbar_insert(HWND handle, HICN icon, char *bubbletext); |
c60a4f6cfae8
Implemented icon support on the Mac. In the process created a new HICN type.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
650
diff
changeset
|
1201 void API dw_taskbar_delete(HWND handle, HICN icon); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1202 int API dw_screen_width(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1203 int API dw_screen_height(void); |
514
08d770271709
More function name changes for Rexx/DW compatibility.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
513
diff
changeset
|
1204 unsigned long API dw_color_depth_get(void); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1205 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
|
1206 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
|
1207 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
|
1208 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
|
1209 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
|
1210 void API dw_notebook_page_set(HWND handle, unsigned int pageid); |
510
710f82598210
Change function names to be inline with Mark Hessling's Rexx/DW.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
508
diff
changeset
|
1211 unsigned long API dw_notebook_page_get(HWND handle); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1212 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
|
1213 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
|
1214 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
|
1215 float API dw_splitbar_get(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1216 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
|
1217 HMENUI API dw_menubar_new(HWND location); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1218 HWND API dw_menu_append_item(HMENUI menu, char *title, unsigned long id, unsigned long flags, int end, int check, HMENUI submenu); |
634
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
1219 #ifdef INCOMPLETE |
596
a8ea3d68b9ec
Update version
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
584
diff
changeset
|
1220 void API dw_menu_delete_item(HMENUI menu, unsigned long id); |
a8ea3d68b9ec
Update version
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
584
diff
changeset
|
1221 #endif |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1222 void API dw_menu_item_set_check(HMENUI menu, unsigned long id, int check); |
618
a431ee5e049f
Added dw_menu_item_set_state() to set checked status of menu item and ability to enable/disable menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
613
diff
changeset
|
1223 void API dw_menu_item_set_state( HMENUI menux, unsigned long id, unsigned long state); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1224 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
|
1225 void API dw_menu_destroy(HMENUI *menu); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1226 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
|
1227 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
|
1228 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
|
1229 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
|
1230 HMTX API dw_mutex_new(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1231 void API dw_mutex_close(HMTX mutex); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1232 void API dw_mutex_lock(HMTX mutex); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1233 void API dw_mutex_unlock(HMTX mutex); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1234 HEV API dw_event_new(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1235 int API dw_event_reset(HEV eve); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1236 int API dw_event_post(HEV eve); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1237 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
|
1238 int API dw_event_close (HEV *eve); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1239 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
|
1240 void API dw_thread_end(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1241 DWTID API dw_thread_id(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1242 void API dw_exit(int exitcode); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1243 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
|
1244 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
|
1245 void API dw_color_background_set(unsigned long value); |
566
f6de197ecbe9
Add dw_color_choose()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
564
diff
changeset
|
1246 unsigned long API dw_color_choose(unsigned long value); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1247 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
|
1248 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
|
1249 void API dw_draw_rect(HWND handle, HPIXMAP pixmap, int fill, int x, int y, int width, int height); |
633
87db549e79bc
Add dw_polygon_draw() to draw closed polygons.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
624
diff
changeset
|
1250 void API dw_draw_polygon(HWND handle, HPIXMAP pixmap, int fill, int npoints, int *x, int *y); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1251 void API dw_draw_text(HWND handle, HPIXMAP pixmap, int x, int y, char *text); |
514
08d770271709
More function name changes for Rexx/DW compatibility.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
513
diff
changeset
|
1252 void API dw_font_text_extents_get(HWND handle, HPIXMAP pixmap, char *text, int *width, int *height); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1253 void API dw_flush(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1254 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
|
1255 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
|
1256 HPIXMAP API dw_pixmap_new_from_file(HWND handle, char *filename); |
612
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
1257 HPIXMAP API dw_pixmap_new_from_data(HWND handle, char *data, int len); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1258 HPIXMAP API dw_pixmap_grab(HWND handle, ULONG id); |
634
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
1259 void API dw_pixmap_set_transparent_color( HPIXMAP pixmap, ULONG color ); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1260 void API dw_pixmap_destroy(HPIXMAP pixmap); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1261 void API dw_beep(int freq, int dur); |
400
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1262 int API dw_messagebox(char *title, int flags, char *format, ...); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1263 void API dw_environment_query(DWEnv *env); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1264 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
|
1265 int API dw_browse(char *url); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1266 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
|
1267 char * API dw_user_dir(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1268 DWDialog * API dw_dialog_new(void *data); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1269 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
|
1270 void * API dw_dialog_wait(DWDialog *dialog); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1271 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
|
1272 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
|
1273 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
|
1274 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
|
1275 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
|
1276 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
|
1277 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
|
1278 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
|
1279 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
|
1280 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
|
1281 void API dw_signal_disconnect_by_name(HWND window, char *signame); |
557
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
1282 HEV API dw_named_event_new(char *name); |
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
1283 HEV API dw_named_event_get(char *name); |
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
1284 int API dw_named_event_reset(HEV eve); |
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
1285 int API dw_named_event_post(HEV eve); |
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
1286 int API dw_named_event_wait(HEV eve, unsigned long timeout); |
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
1287 int API dw_named_event_close(HEV eve); |
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
1288 HSHM API dw_named_memory_new(void **dest, int size, char *name); |
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
1289 HSHM API dw_named_memory_get(void **dest, int size, char *name); |
1a210e2f214b
Added a bunch of support routines I now own due to the settlement
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
535
diff
changeset
|
1290 int API dw_named_memory_free(HSHM handle, void *ptr); |
584
420c6c94abc7
Added dw_html_* functionality for embedding HTML pages in Dynamic Windows
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
571
diff
changeset
|
1291 void API dw_html_action(HWND hwnd, int action); |
420c6c94abc7
Added dw_html_* functionality for embedding HTML pages in Dynamic Windows
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
571
diff
changeset
|
1292 int API dw_html_raw(HWND hwnd, char *string); |
420c6c94abc7
Added dw_html_* functionality for embedding HTML pages in Dynamic Windows
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
571
diff
changeset
|
1293 int API dw_html_url(HWND hwnd, char *url); |
420c6c94abc7
Added dw_html_* functionality for embedding HTML pages in Dynamic Windows
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
571
diff
changeset
|
1294 HWND API dw_html_new(unsigned long id); |
613
f7d318cffc3e
Fix compiler error
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
612
diff
changeset
|
1295 char * API dw_clipboard_get_text(void); |
612
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
1296 void API dw_clipboard_set_text( char *str, int len ); |
596
a8ea3d68b9ec
Update version
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
584
diff
changeset
|
1297 HWND API dw_calendar_new(unsigned long id); |
612
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
1298 void API dw_calendar_set_date( HWND window, unsigned int year, unsigned int month, unsigned int day ); |
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
1299 void API dw_calendar_get_date( HWND window, unsigned int *year, unsigned int *month, unsigned int *day ); |
3 | 1300 |
1301 #endif |