Mercurial > dwindows
annotate dw.h @ 2475:16d195d46f2a
Android: Implement dw_window_new(), dw_box_new() and dw_box_pack().
Initialize JNI when creating new threads.
Include jni.h from dw.h so we can type HWND as jobject.
Remove our own resize code, we are going to try to use LinearLayout.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Wed, 21 Apr 2021 11:15:26 +0000 |
parents | a13e6db064f4 |
children | fa976a5bc7bd |
rev | line source |
---|---|
1897
951356ced7d5
Changes preparing for 3.0 release.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1893
diff
changeset
|
1 /* $Id$ */ |
3 | 2 |
3 #ifndef _H_DW | |
4 #define _H_DW | |
5 | |
2000
77e43d71eaa7
Changes to allow mixing C and C++ when including dw.h.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1991
diff
changeset
|
6 #ifdef __cplusplus |
77e43d71eaa7
Changes to allow mixing C and C++ when including dw.h.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1991
diff
changeset
|
7 extern "C" { |
77e43d71eaa7
Changes to allow mixing C and C++ when including dw.h.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1991
diff
changeset
|
8 #endif |
77e43d71eaa7
Changes to allow mixing C and C++ when including dw.h.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1991
diff
changeset
|
9 |
15
81833f25b1aa
Added new Dynamic Windows build information to the DWEnv struct.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
14
diff
changeset
|
10 /* Dynamic Windows version numbers */ |
1897
951356ced7d5
Changes preparing for 3.0 release.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1893
diff
changeset
|
11 #define DW_MAJOR_VERSION 3 |
2239
95ad22a4da2d
Bump version to 3.2 now that we are post 3.1 release.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2236
diff
changeset
|
12 #define DW_MINOR_VERSION 2 |
624
7bdb2a58c51d
Update package version
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
618
diff
changeset
|
13 #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
|
14 |
2005
a17cc1958369
GTK: Added WebKit2 support for GTK3. Remove dead code from GTK2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2000
diff
changeset
|
15 #define DW_HOME_URL "http://dwindows.netlabs.org" |
a17cc1958369
GTK: Added WebKit2 support for GTK3. Remove dead code from GTK2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2000
diff
changeset
|
16 |
2159
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
17 /* Support for API deprecation in supported compilers */ |
2163
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
18 #ifndef __has_attribute |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
19 # define __has_attribute(x) 0 |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
20 #endif |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
21 |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
22 #ifndef __has_extension |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
23 # define __has_extension __has_feature |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
24 #endif |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
25 |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
26 #ifndef __has_feature |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
27 # define __has_feature(x) 0 |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
28 #endif |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
29 |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
30 #ifndef __GNUC_PREREQ |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
31 # if defined(__GNUC__) && defined(__GNUC_MINOR__) |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
32 # define __GNUC_PREREQ(maj, min) ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min)) |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
33 # else |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
34 # define __GNUC_PREREQ(maj, min) 0 |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
35 # endif |
2159
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
36 #endif |
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
37 |
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
38 /* Visual C */ |
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
39 #if defined(_MSC_VER) |
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
40 # if _MSC_VER >= 1400 |
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
41 # define DW_DEPRECATED(func, message) __declspec(deprecated(message)) func |
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
42 # endif |
2163
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
43 /* Clang or GCC */ |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
44 #elif __has_extension(attribute_deprecated_with_message) || __GNUC_PREREQ(4, 5) |
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
45 # define DW_DEPRECATED(func, message) func __attribute__((deprecated (message))) |
2166
f98cecae5402
Revisiting gcc versions, decided to use the official documentation for reference:
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2163
diff
changeset
|
46 #elif __has_extension(attribute_deprecated) || __GNUC_PREREQ(3, 1) |
2163
98db0e81a514
Rewrite the Compiler detection tests for deprecation and unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2159
diff
changeset
|
47 # define DW_DEPRECATED(func, message) func __attribute__((deprecated)) |
2159
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
48 #endif |
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
49 |
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
50 /* Compiler without deprecation support */ |
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
51 #ifndef DW_DEPRECATED |
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
52 #define DW_DEPRECATED(func, message) func |
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
53 #endif |
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
54 |
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
55 /* Support for unused variables in supported compilers */ |
2166
f98cecae5402
Revisiting gcc versions, decided to use the official documentation for reference:
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2163
diff
changeset
|
56 #if __has_attribute(unused) || __GNUC_PREREQ(2, 95) |
2159
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
57 #define DW_UNUSED(x) x __attribute__((__unused__)) |
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
58 #else |
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
59 #define DW_UNUSED(x) x |
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
60 #endif |
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
61 |
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
|
62 /* 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
|
63 * 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
|
64 * 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
|
65 */ |
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
|
66 #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
|
67 #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
|
68 #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
|
69 #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
|
70 #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
|
71 #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
|
72 #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
|
73 #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
|
74 #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
|
75 #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
|
76 #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
|
77 #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
|
78 #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
|
79 #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
|
80 #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
|
81 #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
|
82 #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
|
83 |
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
|
84 /* 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
|
85 #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
|
86 #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
|
87 #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
|
88 #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
|
89 #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
|
90 #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
|
91 #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
|
92 #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
|
93 #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
|
94 #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
|
95 #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
|
96 #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
|
97 #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
|
98 #define DW_SIGNAL_VALUE_CHANGED "value_changed" |
330
b87afd126cb7
Add switch-page signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
328
diff
changeset
|
99 #define DW_SIGNAL_SWITCH_PAGE "switch-page" |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
100 #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
|
101 #define DW_SIGNAL_TREE_EXPAND "tree-expand" |
2006
6f1adc77de02
GTK: Added DW_SIGNAL_HTML_CHANGED and DW_SIGNAL_HTML_RESULT.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2005
diff
changeset
|
102 #define DW_SIGNAL_HTML_CHANGED "html-changed" |
6f1adc77de02
GTK: Added DW_SIGNAL_HTML_CHANGED and DW_SIGNAL_HTML_RESULT.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2005
diff
changeset
|
103 #define DW_SIGNAL_HTML_RESULT "html-result" |
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
|
104 |
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
|
105 /* 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
|
106 #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
|
107 #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
|
108 #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
|
109 #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
|
110 |
1468
b2235efd9914
Rewrite of window position code for GTK2. DW_BORDER_WIDTH and DW_BORDER_HEIGHT
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1437
diff
changeset
|
111 /* Gravity */ |
b2235efd9914
Rewrite of window position code for GTK2. DW_BORDER_WIDTH and DW_BORDER_HEIGHT
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1437
diff
changeset
|
112 #define DW_GRAV_TOP 0 |
b2235efd9914
Rewrite of window position code for GTK2. DW_BORDER_WIDTH and DW_BORDER_HEIGHT
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1437
diff
changeset
|
113 #define DW_GRAV_LEFT 0 |
b2235efd9914
Rewrite of window position code for GTK2. DW_BORDER_WIDTH and DW_BORDER_HEIGHT
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1437
diff
changeset
|
114 #define DW_GRAV_CENTER 1 |
b2235efd9914
Rewrite of window position code for GTK2. DW_BORDER_WIDTH and DW_BORDER_HEIGHT
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1437
diff
changeset
|
115 #define DW_GRAV_RIGHT 2 |
b2235efd9914
Rewrite of window position code for GTK2. DW_BORDER_WIDTH and DW_BORDER_HEIGHT
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1437
diff
changeset
|
116 #define DW_GRAV_BOTTOM 2 |
b2235efd9914
Rewrite of window position code for GTK2. DW_BORDER_WIDTH and DW_BORDER_HEIGHT
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1437
diff
changeset
|
117 #define DW_GRAV_OBSTACLES (1 << 10) |
b2235efd9914
Rewrite of window position code for GTK2. DW_BORDER_WIDTH and DW_BORDER_HEIGHT
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1437
diff
changeset
|
118 |
634
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
119 /* 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
|
120 #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
|
121 # ifndef GDK_WINDOWING_WIN32 |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
122 # define GDK_WINDOWING_WIN32 |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
123 # endif |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
124 #endif |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
125 |
2473
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
126 #if defined(__OS2__) || (defined(__WIN32__) && !defined(GDK_WINDOWING_WIN32)) || defined(__MAC__) || defined(__IOS__) || defined(__EMX__) || defined(__ANDROID__) || defined(__TEMPLATE__) |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
127 /* OS/2, Windows or MacOS */ |
3 | 128 |
1404
56f311dc23f6
Changes to get the library building with Watcom on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1392
diff
changeset
|
129 #ifdef __OS2__ |
56f311dc23f6
Changes to get the library building with Watcom on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1392
diff
changeset
|
130 # if (defined(__IBMC__) || defined(__WATCOMC__) || defined(_System)) && !defined(API) |
56f311dc23f6
Changes to get the library building with Watcom on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1392
diff
changeset
|
131 # define API _System |
56f311dc23f6
Changes to get the library building with Watcom on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1392
diff
changeset
|
132 # endif |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
133 #endif |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
134 |
3 | 135 /* Used internally */ |
136 #define TYPEBOX 0 | |
137 #define TYPEITEM 1 | |
138 | |
139 #define SIZESTATIC 0 | |
140 #define SIZEEXPAND 1 | |
141 | |
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
|
142 #define SPLITBAR_WIDTH 4 |
3 | 143 |
90
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
144 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
|
145 { |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
146 struct _user_data *next; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
147 void *data; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
148 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
|
149 } UserData; |
eeb98f881663
Committed the dw_window_set/get_data() changes from the FX tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
88
diff
changeset
|
150 |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
151 /* OS/2 Specific section */ |
3 | 152 #if defined(__OS2__) || defined(__EMX__) |
153 #define INCL_DOS | |
154 #define INCL_WIN | |
155 #define INCL_GPI | |
156 | |
157 #include <os2.h> | |
158 | |
159 #define DW_DT_LEFT DT_LEFT | |
160 #define DW_DT_QUERYEXTENT DT_QUERYEXTENT | |
161 #define DW_DT_UNDERSCORE DT_UNDERSCORE | |
162 #define DW_DT_STRIKEOUT DT_STRIKEOUT | |
163 #define DW_DT_TEXTATTRS DT_TEXTATTRS | |
164 #define DW_DT_EXTERNALLEADING DT_EXTERNALLEADING | |
165 #define DW_DT_CENTER DT_CENTER | |
166 #define DW_DT_RIGHT DT_RIGHT | |
167 #define DW_DT_TOP DT_TOP | |
168 #define DW_DT_VCENTER DT_VCENTER | |
169 #define DW_DT_BOTTOM DT_BOTTOM | |
170 #define DW_DT_HALFTONE DT_HALFTONE | |
171 #define DW_DT_MNEMONIC DT_MNEMONIC | |
172 #define DW_DT_WORDBREAK DT_WORDBREAK | |
173 #define DW_DT_ERASERECT DT_ERASERECT | |
174 | |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
175 #ifndef FCF_CLOSEBUTTON |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
176 #define FCF_CLOSEBUTTON 0x04000000L |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
177 #endif |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
178 |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
179 #define DW_FCF_CLOSEBUTTON 0 |
3 | 180 #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
|
181 #define DW_FCF_SYSMENU (FCF_SYSMENU | FCF_CLOSEBUTTON) |
3 | 182 #define DW_FCF_MENU FCF_MENU |
183 #define DW_FCF_SIZEBORDER FCF_SIZEBORDER | |
184 #define DW_FCF_MINBUTTON FCF_MINBUTTON | |
185 #define DW_FCF_MAXBUTTON FCF_MAXBUTTON | |
186 #define DW_FCF_MINMAX FCF_MINMAX | |
187 #define DW_FCF_DLGBORDER FCF_DLGBORDER | |
188 #define DW_FCF_BORDER FCF_BORDER | |
189 #define DW_FCF_TASKLIST FCF_TASKLIST | |
190 #define DW_FCF_NOMOVEWITHOWNER FCF_NOMOVEWITHOWNER | |
191 #define DW_FCF_SYSMODAL FCF_SYSMODAL | |
192 #define DW_FCF_HIDEBUTTON FCF_HIDEBUTTON | |
193 #define DW_FCF_HIDEMAX FCF_HIDEMAX | |
194 #define DW_FCF_AUTOICON FCF_AUTOICON | |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
195 #define DW_FCF_MAXIMIZE WS_MAXIMIZED |
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
196 #define DW_FCF_MINIMIZE WS_MINIMIZED |
1802
aedf5903db0a
Add DW_FCF_TEXTURED window style; relevant only for Mac port.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1795
diff
changeset
|
197 #define DW_FCF_TEXTURED 0 |
1933
758f49e54566
Enable dw_windows_get_text() to return value of label under GTK.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1924
diff
changeset
|
198 #define DW_FCF_FULLSCREEN 0 |
3 | 199 |
200 #define DW_CFA_BITMAPORICON CFA_BITMAPORICON | |
201 #define DW_CFA_STRING CFA_STRING | |
202 #define DW_CFA_ULONG CFA_ULONG | |
203 #define DW_CFA_TIME CFA_TIME | |
204 #define DW_CFA_DATE CFA_DATE | |
205 #define DW_CFA_CENTER CFA_CENTER | |
206 #define DW_CFA_LEFT CFA_LEFT | |
207 #define DW_CFA_RIGHT CFA_RIGHT | |
208 #define DW_CFA_HORZSEPARATOR CFA_HORZSEPARATOR | |
209 #define DW_CFA_SEPARATOR CFA_SEPARATOR | |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
210 #define DW_CFA_STRINGANDICON 0 |
3 | 211 |
69
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
212 #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
|
213 #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
|
214 |
1871
3f571ad9b92e
First Mac round of changes aimed at separating the data and text
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1863
diff
changeset
|
215 #define DW_CR_RETDATA (1 << 10) |
3f571ad9b92e
First Mac round of changes aimed at separating the data and text
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1863
diff
changeset
|
216 |
3 | 217 #define DW_LS_MULTIPLESEL LS_MULTIPLESEL |
218 | |
219 #define DW_LIT_NONE -1 | |
220 | |
221 #define DW_MLE_CASESENSITIVE MLFSEARCH_CASESENSITIVE | |
222 | |
531
79696a852401
Added DW_POINTER_DEFAULT, this will return the pointer to the default
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
525
diff
changeset
|
223 #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
|
224 #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
|
225 #define DW_POINTER_CLOCK SPTR_WAIT |
1004
cb81c08bd8c3
Correct OS/2 question mark pointer #define; should be SPTR_ICONQUESTION despite some online
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
987
diff
changeset
|
226 #define DW_POINTER_QUESTION SPTR_ICONQUESTION |
22
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
227 |
763
2cace4e6e69a
Added DW_BS_NOBORDER style which can be set on buttons with dw_window_set_style() to make them flat.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
745
diff
changeset
|
228 #define DW_BS_NOBORDER BS_NOBORDER |
2cace4e6e69a
Added DW_BS_NOBORDER style which can be set on buttons with dw_window_set_style() to make them flat.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
745
diff
changeset
|
229 |
400
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
230 /* flag values for dw_messagebox() */ |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
231 #define DW_MB_OK MB_OK |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
232 #define DW_MB_OKCANCEL MB_OKCANCEL |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
233 #define DW_MB_YESNO MB_YESNO |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
234 #define DW_MB_YESNOCANCEL MB_YESNOCANCEL |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
235 |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
236 #define DW_MB_WARNING MB_WARNING |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
237 #define DW_MB_ERROR MB_ERROR |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
238 #define DW_MB_INFORMATION MB_INFORMATION |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
239 #define DW_MB_QUESTION MB_QUERY |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
240 |
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
|
241 /* 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
|
242 #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
|
243 #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
|
244 #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
|
245 #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
|
246 #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
|
247 #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
|
248 #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
|
249 #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
|
250 #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
|
251 #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
|
252 #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
|
253 #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
|
254 #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
|
255 #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
|
256 #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
|
257 #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
|
258 #define VK_MULTIPLY ('*' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
259 #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
|
260 #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
|
261 #define VK_SUBTRACT ('-' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
262 #define VK_DECIMAL ('.' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
263 #define VK_DIVIDE ('/' + 128) |
7c1770e3fe08
Filled in many of the holes on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
264 #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
|
265 #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
|
266 #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
|
267 #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
|
268 #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
|
269 #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
|
270 #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
|
271 #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
|
272 #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
|
273 #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
|
274 #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
|
275 #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
|
276 #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
|
277 #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
|
278 #define VK_NUMPAD9 ('9' + 128) |
446
ab549e2f34b9
Fix some OS/2 key definitions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
441
diff
changeset
|
279 #define VK_BACK VK_BACKSPACE |
ab549e2f34b9
Fix some OS/2 key definitions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
441
diff
changeset
|
280 #define VK_LMENU VK_MENU |
ab549e2f34b9
Fix some OS/2 key definitions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
441
diff
changeset
|
281 #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
|
282 |
1392
943266c86aed
Refactoring OS/2 and Windows code... eliminating BubbleButton...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1389
diff
changeset
|
283 #define BUBBLE_HELP_MAX 256 |
943266c86aed
Refactoring OS/2 and Windows code... eliminating BubbleButton...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1389
diff
changeset
|
284 |
40
88c9c7410c22
Lots of fixes and new functions on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
39
diff
changeset
|
285 typedef struct _window_data { |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
286 PFNWP oldproc; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
287 UserData *root; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
288 HWND clickdefault; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
289 ULONG flags; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
290 void *data; |
1392
943266c86aed
Refactoring OS/2 and Windows code... eliminating BubbleButton...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1389
diff
changeset
|
291 char bubbletext[BUBBLE_HELP_MAX]; |
40
88c9c7410c22
Lots of fixes and new functions on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
39
diff
changeset
|
292 } WindowData; |
88c9c7410c22
Lots of fixes and new functions on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
39
diff
changeset
|
293 |
3 | 294 typedef struct _hpixmap { |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
295 unsigned long width, height; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
296 HDC hdc; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
297 HPS hps; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
298 HBITMAP hbm; |
1182
cef7400dcaba
Switch to using a dummy window handle for pixmap fonts on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1171
diff
changeset
|
299 HWND handle, font; |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
300 unsigned long transcolor; |
1701
cc3aba44943e
Oops... missed the header file change in that last commit.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1667
diff
changeset
|
301 int depth; |
3 | 302 } *HPIXMAP; |
303 | |
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
|
304 typedef void *HTREEITEM; |
185
f55677513954
Updated the menu code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
182
diff
changeset
|
305 typedef HWND HMENUI; |
f55677513954
Updated the menu code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
182
diff
changeset
|
306 typedef HMODULE HMOD; |
236
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
307 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
|
308 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
|
309 typedef unsigned long HICN; |
3 | 310 |
311 extern HAB dwhab; | |
312 extern HMQ dwhmq; | |
1991
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
313 |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
314 #include <stdio.h> |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
315 |
2081
24875681eec5
Added htmlEngine to DWEnv
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2077
diff
changeset
|
316 /* Mostly safe but slow snprintf() for compilers that don't have it... |
1991
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
317 * like VisualAge. So we can write safe code and still use VAC to test. |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
318 */ |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
319 #if defined(__IBMC__) && !defined(snprintf) |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
320 #include <stdarg.h> |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
321 #include <string.h> |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
322 #include <stdlib.h> |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
323 static int _dw_snprintf(char *str, size_t size, const char *format, ...) |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
324 { |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
325 va_list args; |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
326 char *outbuf = calloc(1, size + strlen(format) + 1024); |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
327 int retval = -1; |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
328 |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
329 if(outbuf) |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
330 { |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
331 va_start(args, format); |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
332 vsprintf(outbuf, format, args); |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
333 va_end(args); |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
334 retval = strlen(outbuf); |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
335 strncpy(str, outbuf, size); |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
336 free(outbuf); |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
337 } |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
338 return retval; |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
339 } |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
340 #define snprintf _dw_snprintf |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
341 #endif |
d83a86f5fe7f
OS/2: Move internal snprintf() into dw.h and dwcompat.h so it can be used
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1960
diff
changeset
|
342 |
3 | 343 #endif |
344 | |
2372
df0a66945296
iOS: Initial commit of iOS source... based on MacOS code...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2355
diff
changeset
|
345 #if defined(__MAC__) || defined (__IOS__) |
df0a66945296
iOS: Initial commit of iOS source... based on MacOS code...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2355
diff
changeset
|
346 /* MacOS and iOS specific section */ |
650
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
347 #include <pthread.h> |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
348 #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
|
349 |
2451
44b77654c406
Add DW_DIR_SEPARATOR for easy access to the separator characters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2410
diff
changeset
|
350 /* Unfortunately we can't import Cocoa.h or |
44b77654c406
Add DW_DIR_SEPARATOR for easy access to the separator characters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2410
diff
changeset
|
351 * UIKit.h from C code, so we have to instead |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
352 * use opaque types and use the values from |
2372
df0a66945296
iOS: Initial commit of iOS source... based on MacOS code...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2355
diff
changeset
|
353 * the headers here directly without using the |
df0a66945296
iOS: Initial commit of iOS source... based on MacOS code...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2355
diff
changeset
|
354 * symbolic names. |
650
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
355 */ |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
356 |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
357 #define TRUE 1 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
358 #define FALSE 0 |
650
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
359 |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
360 typedef void *HWND; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
361 typedef void *HSHM; |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
362 typedef unsigned long ULONG; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
363 typedef long LONG; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
364 typedef unsigned short USHORT; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
365 typedef short SHORT; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
366 typedef unsigned short UWORD; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
367 typedef short WORD ; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
368 typedef unsigned char UCHAR; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
369 typedef char CHAR; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
370 typedef unsigned UINT; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
371 typedef int INT; |
650
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
372 typedef pthread_mutex_t *HMTX; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
373 typedef struct _dw_unix_event { |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
374 pthread_mutex_t mutex; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
375 pthread_cond_t event; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
376 pthread_t thread; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
377 int alive; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
378 int posted; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
379 } *HEV; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
380 typedef pthread_t DWTID; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
381 typedef void * HMOD; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
382 struct _dw_unix_shm { |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
383 int fd; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
384 char *path; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
385 int sid; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
386 int size; |
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
387 }; |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
388 typedef void *HTREEITEM; |
650
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
389 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
|
390 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
|
391 |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
392 typedef struct _window_data { |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
393 UserData *root; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
394 HWND clickdefault; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
395 ULONG flags; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
396 void *data; |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
397 } WindowData; |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
398 |
612
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
399 typedef struct _hpixmap { |
745
d29fb0d5b291
Fixes for font handling on pixmaps... it needs to use the associated render control to get the fonts.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
744
diff
changeset
|
400 unsigned long width, height; |
1146
9d97610b2140
Adding dw_pixmap_set_font() which is equivalent to dw_window_set_font() except for pixmaps.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1136
diff
changeset
|
401 void *image, *font; |
745
d29fb0d5b291
Fixes for font handling on pixmaps... it needs to use the associated render control to get the fonts.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
744
diff
changeset
|
402 HWND handle; |
612
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
403 } *HPIXMAP; |
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
404 |
697
830e1f3672b9
Added draining mechanism for threads that don't have run loops.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
676
diff
changeset
|
405 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
|
406 |
2376
e6449653a30b
Mac: On ARM (M1) NSTextAlignmentCenter and NSTextAligmnentRight are swapped.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2372
diff
changeset
|
407 #define DW_DT_LEFT 0 /* NSTextAlignmentLeft */ |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
408 #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
|
409 #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
|
410 #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
|
411 #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
|
412 #define DW_DT_EXTERNALLEADING 0 |
2376
e6449653a30b
Mac: On ARM (M1) NSTextAlignmentCenter and NSTextAligmnentRight are swapped.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2372
diff
changeset
|
413 #ifdef __aarch64__ |
e6449653a30b
Mac: On ARM (M1) NSTextAlignmentCenter and NSTextAligmnentRight are swapped.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2372
diff
changeset
|
414 #define DW_DT_CENTER 1 /* NSTextAlignmentCenter */ |
e6449653a30b
Mac: On ARM (M1) NSTextAlignmentCenter and NSTextAligmnentRight are swapped.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2372
diff
changeset
|
415 #define DW_DT_RIGHT 2 /* NSTextAlignmentRight */ |
e6449653a30b
Mac: On ARM (M1) NSTextAlignmentCenter and NSTextAligmnentRight are swapped.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2372
diff
changeset
|
416 #else |
e6449653a30b
Mac: On ARM (M1) NSTextAlignmentCenter and NSTextAligmnentRight are swapped.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2372
diff
changeset
|
417 #define DW_DT_CENTER 2 /* NSTextAlignmentCenter */ |
e6449653a30b
Mac: On ARM (M1) NSTextAlignmentCenter and NSTextAligmnentRight are swapped.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2372
diff
changeset
|
418 #define DW_DT_RIGHT 1 /* NSTextAlignmentRight */ |
e6449653a30b
Mac: On ARM (M1) NSTextAlignmentCenter and NSTextAligmnentRight are swapped.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2372
diff
changeset
|
419 #endif |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
420 #define DW_DT_TOP 0 |
859
80a88c91ccf6
Implemented vertical centering on text fields.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
839
diff
changeset
|
421 #define DW_DT_VCENTER (1 << 10) |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
422 #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
|
423 #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
|
424 #define DW_DT_MNEMONIC 0 |
1788
9d499b162fe1
Discovered a breakage in OS/2 functionality when building
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1783
diff
changeset
|
425 #define DW_DT_WORDBREAK (1 << 11) |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
426 #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
|
427 |
2376
e6449653a30b
Mac: On ARM (M1) NSTextAlignmentCenter and NSTextAligmnentRight are swapped.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2372
diff
changeset
|
428 #define DW_FCF_CLOSEBUTTON (1 << 1) /* NSWindowStyleMaskClosable */ |
e6449653a30b
Mac: On ARM (M1) NSTextAlignmentCenter and NSTextAligmnentRight are swapped.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2372
diff
changeset
|
429 #define DW_FCF_TITLEBAR (1 << 0) /* NSWindowStyleMaskTitled */ |
e6449653a30b
Mac: On ARM (M1) NSTextAlignmentCenter and NSTextAligmnentRight are swapped.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2372
diff
changeset
|
430 #define DW_FCF_SYSMENU (1 << 1) /* NSWindowStyleMaskClosable */ |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
431 #define DW_FCF_MENU 0 |
2376
e6449653a30b
Mac: On ARM (M1) NSTextAlignmentCenter and NSTextAligmnentRight are swapped.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2372
diff
changeset
|
432 #define DW_FCF_SIZEBORDER (1 << 3) /* NSWindowStyleMaskResizable */ |
e6449653a30b
Mac: On ARM (M1) NSTextAlignmentCenter and NSTextAligmnentRight are swapped.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2372
diff
changeset
|
433 #define DW_FCF_MINBUTTON (1 << 2) /* NSWindowStyleMaskMiniaturizable */ |
650
55b677d460e9
Added initial support for a MacOS Cocoa port.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
434 #define DW_FCF_MAXBUTTON 0 |
2376
e6449653a30b
Mac: On ARM (M1) NSTextAlignmentCenter and NSTextAligmnentRight are swapped.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2372
diff
changeset
|
435 #define DW_FCF_MINMAX (1 << 2) /* NSWindowStyleMaskMiniaturizable */ |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
436 #define DW_FCF_DLGBORDER 0 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
437 #define DW_FCF_BORDER 0 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
438 #define DW_FCF_TASKLIST 0 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
439 #define DW_FCF_NOMOVEWITHOWNER 0 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
440 #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
|
441 #define DW_FCF_HIDEBUTTON 0 |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
442 #define DW_FCF_HIDEMAX 0 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
443 #define DW_FCF_AUTOICON 0 |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
444 #define DW_FCF_MAXIMIZE 0 |
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
445 #define DW_FCF_MINIMIZE 0 |
2376
e6449653a30b
Mac: On ARM (M1) NSTextAlignmentCenter and NSTextAligmnentRight are swapped.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2372
diff
changeset
|
446 #define DW_FCF_TEXTURED (1 << 8) /* NSWindowStyleMaskTexturedBackground */ |
1933
758f49e54566
Enable dw_windows_get_text() to return value of label under GTK.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1924
diff
changeset
|
447 #define DW_FCF_FULLSCREEN (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
|
448 |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
449 #define DW_CFA_BITMAPORICON 1 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
450 #define DW_CFA_STRING (1 << 1) |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
451 #define DW_CFA_ULONG (1 << 2) |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
452 #define DW_CFA_TIME (1 << 3) |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
453 #define DW_CFA_DATE (1 << 4) |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
454 #define DW_CFA_CENTER (1 << 5) |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
455 #define DW_CFA_LEFT (1 << 6) |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
456 #define DW_CFA_RIGHT (1 << 7) |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
457 #define DW_CFA_STRINGANDICON (1 << 8) |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
458 #define DW_CFA_HORZSEPARATOR 0 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
459 #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
|
460 |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
461 #define DW_CRA_SELECTED 1 |
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
462 #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
|
463 |
1871
3f571ad9b92e
First Mac round of changes aimed at separating the data and text
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1863
diff
changeset
|
464 #define DW_CR_RETDATA (1 << 10) |
3f571ad9b92e
First Mac round of changes aimed at separating the data and text
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1863
diff
changeset
|
465 |
433
f225f16bebbd
Compile fixes for MacOS X.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
416
diff
changeset
|
466 #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
|
467 |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
468 #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
|
469 |
889
238ca78e71a7
Set DW_MLE_CASESENSITIVE to be the NSLiteralSearch value.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
859
diff
changeset
|
470 #define DW_MLE_CASESENSITIVE 2 /* NSLiteralSearch */ |
763
2cace4e6e69a
Added DW_BS_NOBORDER style which can be set on buttons with dw_window_set_style() to make them flat.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
745
diff
changeset
|
471 |
2cace4e6e69a
Added DW_BS_NOBORDER style which can be set on buttons with dw_window_set_style() to make them flat.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
745
diff
changeset
|
472 #define DW_BS_NOBORDER 1 |
416
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
473 |
531
79696a852401
Added DW_POINTER_DEFAULT, this will return the pointer to the default
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
525
diff
changeset
|
474 #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
|
475 #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
|
476 #define DW_POINTER_CLOCK 2 |
1004
cb81c08bd8c3
Correct OS/2 question mark pointer #define; should be SPTR_ICONQUESTION despite some online
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
987
diff
changeset
|
477 #define DW_POINTER_QUESTION 3 |
441
b559c06a76c2
Implemented more functionality on MacOS and include the platform define
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
438
diff
changeset
|
478 |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
479 #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
|
480 |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
481 /* 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
|
482 #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
|
483 #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
|
484 #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
|
485 #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
|
486 |
441
b559c06a76c2
Implemented more functionality on MacOS and include the platform define
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
438
diff
changeset
|
487 #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
|
488 #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
|
489 #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
|
490 #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
|
491 |
612
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
492 /* 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
|
493 #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
|
494 #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
|
495 #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
|
496 #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
|
497 #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
|
498 #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
|
499 #define VK_CLEAR 71 |
768
7a236fdcf4ba
Fixed a typo in VK_RETURN and initial implementation of dw_window_click_default().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
765
diff
changeset
|
500 #define VK_RETURN 13 |
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
|
501 #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
|
502 #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
|
503 #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
|
504 #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
|
505 #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
|
506 #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
|
507 #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
|
508 #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
|
509 #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
|
510 #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
|
511 #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
|
512 #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
|
513 #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
|
514 #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
|
515 #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
|
516 #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
|
517 #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
|
518 #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
|
519 #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
|
520 #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
|
521 #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
|
522 #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
|
523 #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
|
524 #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
|
525 #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
|
526 #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
|
527 #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
|
528 #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
|
529 #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
|
530 #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
|
531 #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
|
532 #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
|
533 #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
|
534 #define VK_ADD 69 |
724
41080d22edc8
Couple more fixes to keyhandling... committed before I finished what I was doing...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
723
diff
changeset
|
535 #define VK_SEPARATOR 0xFF15 /* TODO */ |
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
|
536 #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
|
537 #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
|
538 #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
|
539 #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
|
540 #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
|
541 #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
|
542 #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
|
543 #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
|
544 #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
|
545 #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
|
546 #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
|
547 #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
|
548 #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
|
549 #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
|
550 #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
|
551 #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
|
552 #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
|
553 #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
|
554 #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
|
555 #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
|
556 #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
|
557 #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
|
558 #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
|
559 #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
|
560 #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
|
561 #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
|
562 #define VK_F24 0xF71B /* NSF24FunctionKey */ |
724
41080d22edc8
Couple more fixes to keyhandling... committed before I finished what I was doing...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
723
diff
changeset
|
563 #define VK_NUMLOCK 0xFF16 /* TODO */ |
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
|
564 #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
|
565 #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
|
566 #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
|
567 #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
|
568 #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
|
569 #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
|
570 #define VK_RMENU 0xF735 /* NSMenuFunctionKey */ |
612
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
571 |
c5e5671dec8f
Modify Calendar widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
596
diff
changeset
|
572 /* 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
|
573 #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
|
574 #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
|
575 #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
|
576 #endif |
a4197ddfc50d
Changes to calculate groupbox border widths and take this into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
400
diff
changeset
|
577 |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
578 /* Windows specific section */ |
2225
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
579 #if defined(__WIN32__) |
1960
22e3e829be13
Win: Switch to using winsock 2.x, this will remove support for ancient versions of Windows like 95 and NT 3.5 and older...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1933
diff
changeset
|
580 #include <winsock2.h> |
3 | 581 #include <windows.h> |
582 #include <commctrl.h> | |
583 | |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
584 #if defined(MSVC) && !defined(API) |
1663
a76fb5f1a6c8
Fixes for building in Unicode mode with MinGW on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1658
diff
changeset
|
585 # if defined(__MINGW32__) && defined(BUILD_DLL) |
a76fb5f1a6c8
Fixes for building in Unicode mode with MinGW on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1658
diff
changeset
|
586 # define API _cdecl __declspec(dllexport) |
571
828e6a66c5c5
Add dw_listbox_list_append()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
567
diff
changeset
|
587 # else |
828e6a66c5c5
Add dw_listbox_list_append()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
567
diff
changeset
|
588 # define API _cdecl |
828e6a66c5c5
Add dw_listbox_list_append()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
567
diff
changeset
|
589 #endif |
1858
952a41463240
Make sure callbacks have their calling convention specified explicitly on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1853
diff
changeset
|
590 #define DWSIGNAL _cdecl |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
591 #endif |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
592 |
1788
9d499b162fe1
Discovered a breakage in OS/2 functionality when building
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1783
diff
changeset
|
593 #define DW_DT_LEFT SS_LEFTNOWORDWRAP |
3 | 594 #define DW_DT_QUERYEXTENT 0 |
595 #define DW_DT_UNDERSCORE 0 | |
596 #define DW_DT_STRIKEOUT 0 | |
597 #define DW_DT_TEXTATTRS 0 | |
598 #define DW_DT_EXTERNALLEADING 0 | |
599 #define DW_DT_CENTER SS_CENTER | |
600 #define DW_DT_RIGHT SS_RIGHT | |
601 #define DW_DT_TOP 0 | |
1790
209c57a14b09
Rewrite dw_window_set_style() on Windows to properly handle the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1788
diff
changeset
|
602 #define DW_DT_VCENTER (1 << 29) |
3 | 603 #define DW_DT_BOTTOM 0 |
604 #define DW_DT_HALFTONE 0 | |
605 #define DW_DT_MNEMONIC 0 | |
1790
209c57a14b09
Rewrite dw_window_set_style() on Windows to properly handle the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1788
diff
changeset
|
606 #define DW_DT_WORDBREAK (1 << 28) |
3 | 607 #define DW_DT_ERASERECT 0 |
608 | |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
609 #define DW_FCF_CLOSEBUTTON 0 |
3 | 610 #define DW_FCF_TITLEBAR WS_CAPTION |
611 #define DW_FCF_SYSMENU WS_SYSMENU | |
612 #define DW_FCF_MENU 0 | |
613 #define DW_FCF_SIZEBORDER WS_THICKFRAME | |
614 #define DW_FCF_MINBUTTON WS_MINIMIZEBOX | |
615 #define DW_FCF_MAXBUTTON WS_MAXIMIZEBOX | |
616 #define DW_FCF_MINMAX (WS_MINIMIZEBOX|WS_MAXIMIZEBOX) | |
617 #define DW_FCF_DLGBORDER WS_DLGFRAME | |
618 #define DW_FCF_BORDER WS_BORDER | |
1535
2913bb58f439
Added DW_FCF_COMPOSITED frame creation flag, used only on Windows currently...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1528
diff
changeset
|
619 #define DW_FCF_TASKLIST (1 << 1) |
3 | 620 #define DW_FCF_NOMOVEWITHOWNER 0 |
621 #define DW_FCF_SYSMODAL 0 | |
622 #define DW_FCF_HIDEBUTTON WS_MINIMIZEBOX | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
623 #define DW_FCF_HIDEMAX (WS_MINIMIZEBOX|WS_MAXIMIZEBOX) |
3 | 624 #define DW_FCF_AUTOICON 0 |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
625 #define DW_FCF_MAXIMIZE WS_MAXIMIZE |
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
626 #define DW_FCF_MINIMIZE WS_MINIMIZE |
1535
2913bb58f439
Added DW_FCF_COMPOSITED frame creation flag, used only on Windows currently...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1528
diff
changeset
|
627 #define DW_FCF_COMPOSITED 1 |
1802
aedf5903db0a
Add DW_FCF_TEXTURED window style; relevant only for Mac port.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1795
diff
changeset
|
628 #define DW_FCF_TEXTURED 0 |
1933
758f49e54566
Enable dw_windows_get_text() to return value of label under GTK.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1924
diff
changeset
|
629 #define DW_FCF_FULLSCREEN (1 << 2) |
3 | 630 |
631 #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
|
632 #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
|
633 #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
|
634 #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
|
635 #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
|
636 #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
|
637 #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
|
638 #define DW_CFA_RIGHT (1 << 7) |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
639 #define DW_CFA_STRINGANDICON (1 << 8) |
3 | 640 #define DW_CFA_HORZSEPARATOR 0 |
641 #define DW_CFA_SEPARATOR 0 | |
642 | |
69
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
643 #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
|
644 #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
|
645 |
1871
3f571ad9b92e
First Mac round of changes aimed at separating the data and text
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1863
diff
changeset
|
646 #define DW_CR_RETDATA (1 << 10) |
3f571ad9b92e
First Mac round of changes aimed at separating the data and text
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1863
diff
changeset
|
647 |
3 | 648 #define DW_LS_MULTIPLESEL LBS_MULTIPLESEL |
649 | |
650 #define DW_LIT_NONE -1 | |
651 | |
652 #define DW_MLE_CASESENSITIVE 1 | |
653 | |
763
2cace4e6e69a
Added DW_BS_NOBORDER style which can be set on buttons with dw_window_set_style() to make them flat.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
745
diff
changeset
|
654 #define DW_BS_NOBORDER BS_FLAT |
2cace4e6e69a
Added DW_BS_NOBORDER style which can be set on buttons with dw_window_set_style() to make them flat.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
745
diff
changeset
|
655 |
531
79696a852401
Added DW_POINTER_DEFAULT, this will return the pointer to the default
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
525
diff
changeset
|
656 #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
|
657 #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
|
658 #define DW_POINTER_CLOCK 32514 |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
659 #define DW_POINTER_QUESTION 32651 |
22
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
660 |
400
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
661 /* flag values for dw_messagebox() */ |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
662 #define DW_MB_OK MB_OK |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
663 #define DW_MB_OKCANCEL MB_OKCANCEL |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
664 #define DW_MB_YESNO MB_YESNO |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
665 #define DW_MB_YESNOCANCEL MB_YESNOCANCEL |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
666 |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
667 #define DW_MB_WARNING MB_ICONWARNING |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
668 #define DW_MB_ERROR MB_ICONERROR |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
669 #define DW_MB_INFORMATION MB_ICONINFORMATION |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
670 #define DW_MB_QUESTION MB_ICONQUESTION |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
671 |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
672 /* Key Modifiers */ |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
673 #define KC_CTRL (1) |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
674 #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
|
675 #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
|
676 |
3 | 677 typedef struct _color { |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
678 int fore; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
679 int back; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
680 HWND combo, buddy; |
2135
d9720d48d61e
Win: Code cleanup, create internal helper functions _dw_window_get_cinfo() and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2132
diff
changeset
|
681 ULONG style; |
d9720d48d61e
Win: Code cleanup, create internal helper functions _dw_window_get_cinfo() and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2132
diff
changeset
|
682 RECT rect; |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
683 HWND clickdefault; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
684 HBRUSH hbrush; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
685 HFONT hfont; |
2141
709f8bfa711f
Win: Fix a problem where full dark mode was functioning as forced.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2135
diff
changeset
|
686 HMENU hmenu; |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
687 char fontname[128]; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
688 WNDPROC pOldProc; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
689 UserData *root; |
3 | 690 } ColorInfo; |
691 | |
692 typedef struct _notebookpage { | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
693 ColorInfo cinfo; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
694 TC_ITEM item; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
695 HWND hwnd; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
696 int realid; |
3 | 697 } NotebookPage; |
698 | |
699 typedef HANDLE HMTX; | |
700 typedef HANDLE HEV; | |
157
a07dd2e819f3
Added module support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
155
diff
changeset
|
701 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
|
702 typedef HANDLE HSHM; |
975
52cd98b7e45c
Changed to using HANDLE as the base type for HICN on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
960
diff
changeset
|
703 typedef HANDLE HICN; |
3 | 704 |
705 typedef struct _container { | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
706 ColorInfo cinfo; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
707 ULONG *flags; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
708 ULONG columns; |
1212
5271d5cb27ac
Implemented dw_container_set_row_bg() on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1206
diff
changeset
|
709 COLORREF odd, even; |
3 | 710 } ContainerInfo; |
711 | |
712 typedef struct _hpixmap { | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
713 unsigned long width, height; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
714 HBITMAP hbm; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
715 HDC hdc; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
716 unsigned long transcolor; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
717 HWND handle; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
718 void *bits; |
960
841b66d2d1b9
Added initial support for transparent pixmap/bitmaps on Windows...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
889
diff
changeset
|
719 unsigned long depth; |
1146
9d97610b2140
Adding dw_pixmap_set_font() which is equivalent to dw_window_set_font() except for pixmaps.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1136
diff
changeset
|
720 HFONT font; |
3 | 721 } *HPIXMAP; |
722 | |
238
13d3de3f1e83
Rewrote the menu code to not return structs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
236
diff
changeset
|
723 typedef HWND HMENUI; |
3 | 724 #endif |
725 | |
2473
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
726 /* Android section */ |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
727 #if defined(__ANDROID__) |
2475
16d195d46f2a
Android: Implement dw_window_new(), dw_box_new() and dw_box_pack().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2474
diff
changeset
|
728 #include <jni.h> |
2473
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
729 #include <stdio.h> |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
730 #include <stdlib.h> |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
731 #include <stdarg.h> |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
732 #include <limits.h> |
2474
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
733 #include <pthread.h> |
2473
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
734 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
735 /* Can remove this for your port when you know where MAX_PATH is */ |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
736 #ifndef MAX_PATH |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
737 #define MAX_PATH 260 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
738 #endif |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
739 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
740 #define TRUE 1 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
741 #define FALSE 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
742 |
2475
16d195d46f2a
Android: Implement dw_window_new(), dw_box_new() and dw_box_pack().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2474
diff
changeset
|
743 typedef jobject HWND; |
2473
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
744 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
745 typedef unsigned long ULONG; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
746 typedef long LONG; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
747 typedef unsigned short USHORT; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
748 typedef short SHORT; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
749 typedef unsigned short UWORD; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
750 typedef short WORD ; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
751 typedef unsigned char UCHAR; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
752 typedef char CHAR; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
753 typedef unsigned UINT; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
754 typedef int INT; |
2474
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
755 typedef pthread_mutex_t *HMTX; |
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
756 typedef struct _dw_unix_event { |
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
757 pthread_mutex_t mutex; |
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
758 pthread_cond_t event; |
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
759 pthread_t thread; |
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
760 int alive; |
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
761 int posted; |
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
762 } *HEV; |
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
763 typedef pthread_t DWTID; |
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
764 typedef void * HMOD; |
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
765 struct _dw_unix_shm { |
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
766 int fd; |
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
767 char *path; |
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
768 int sid; |
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
769 int size; |
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
770 }; |
2473
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
771 typedef void *HSHM; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
772 typedef void *HTREEITEM; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
773 typedef HWND HMENUI; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
774 typedef unsigned long HICN; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
775 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
776 typedef struct _window_data { |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
777 UserData *root; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
778 HWND clickdefault; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
779 ULONG flags; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
780 void *data; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
781 } WindowData; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
782 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
783 typedef struct _hpixmap { |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
784 unsigned long width, height; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
785 /* ?? *pixmap; */ |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
786 HWND handle; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
787 } *HPIXMAP; |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
788 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
789 #define DW_DT_LEFT 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
790 #define DW_DT_QUERYEXTENT 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
791 #define DW_DT_UNDERSCORE 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
792 #define DW_DT_STRIKEOUT 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
793 #define DW_DT_TEXTATTRS 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
794 #define DW_DT_EXTERNALLEADING 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
795 #define DW_DT_CENTER 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
796 #define DW_DT_RIGHT 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
797 #define DW_DT_TOP 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
798 #define DW_DT_VCENTER 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
799 #define DW_DT_BOTTOM 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
800 #define DW_DT_HALFTONE 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
801 #define DW_DT_MNEMONIC 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
802 #define DW_DT_WORDBREAK 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
803 #define DW_DT_ERASERECT 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
804 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
805 #define DW_FCF_CLOSEBUTTON 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
806 #define DW_FCF_TITLEBAR 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
807 #define DW_FCF_SYSMENU 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
808 #define DW_FCF_MENU 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
809 #define DW_FCF_SIZEBORDER 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
810 #define DW_FCF_MINBUTTON 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
811 #define DW_FCF_MAXBUTTON 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
812 #define DW_FCF_MINMAX (DW_FCF_MINBUTTON|DW_FCF_MAXBUTTON) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
813 #define DW_FCF_DLGBORDER 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
814 #define DW_FCF_BORDER 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
815 #define DW_FCF_TASKLIST 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
816 #define DW_FCF_NOMOVEWITHOWNER 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
817 #define DW_FCF_SYSMODAL 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
818 #define DW_FCF_HIDEBUTTON 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
819 #define DW_FCF_HIDEMAX 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
820 #define DW_FCF_AUTOICON 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
821 #define DW_FCF_MAXIMIZE 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
822 #define DW_FCF_MINIMIZE 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
823 #define DW_FCF_TEXTURED 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
824 #define DW_FCF_FULLSCREEN 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
825 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
826 #define DW_CFA_BITMAPORICON 1 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
827 #define DW_CFA_STRING (1 << 1) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
828 #define DW_CFA_ULONG (1 << 2) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
829 #define DW_CFA_TIME (1 << 3) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
830 #define DW_CFA_DATE (1 << 4) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
831 #define DW_CFA_CENTER (1 << 5) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
832 #define DW_CFA_LEFT (1 << 6) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
833 #define DW_CFA_RIGHT (1 << 7) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
834 #define DW_CFA_STRINGANDICON (1 << 8) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
835 #define DW_CFA_HORZSEPARATOR 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
836 #define DW_CFA_SEPARATOR 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
837 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
838 #define DW_CRA_SELECTED 1 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
839 #define DW_CRA_CURSORED (1 << 1) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
840 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
841 #define DW_CR_RETDATA (1 << 10) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
842 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
843 #define DW_LS_MULTIPLESEL 1 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
844 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
845 #define DW_LIT_NONE -1 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
846 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
847 #define DW_MLE_CASESENSITIVE 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
848 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
849 #define DW_BS_NOBORDER 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
850 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
851 #define DW_POINTER_DEFAULT 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
852 #define DW_POINTER_ARROW 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
853 #define DW_POINTER_CLOCK 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
854 #define DW_POINTER_QUESTION 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
855 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
856 #define HWND_DESKTOP ((HWND)0) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
857 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
858 /* flag values for dw_messagebox() */ |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
859 #define DW_MB_OK (1 << 1) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
860 #define DW_MB_OKCANCEL (1 << 2) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
861 #define DW_MB_YESNO (1 << 3) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
862 #define DW_MB_YESNOCANCEL (1 << 4) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
863 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
864 #define DW_MB_WARNING (1 << 10) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
865 #define DW_MB_ERROR (1 << 11) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
866 #define DW_MB_INFORMATION (1 << 12) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
867 #define DW_MB_QUESTION (1 << 13) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
868 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
869 /* Virtual Key Codes */ |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
870 #define VK_LBUTTON 0 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
871 #define VK_RBUTTON 1 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
872 #define VK_CANCEL 2 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
873 #define VK_MBUTTON 3 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
874 #define VK_BACK 4 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
875 #define VK_TAB 5 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
876 #define VK_CLEAR 6 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
877 #define VK_RETURN 7 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
878 #define VK_MENU 8 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
879 #define VK_PAUSE 9 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
880 #define VK_CAPITAL 10 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
881 #define VK_ESCAPE 11 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
882 #define VK_SPACE 12 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
883 #define VK_PRIOR 13 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
884 #define VK_NEXT 14 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
885 #define VK_END 15 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
886 #define VK_HOME 16 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
887 #define VK_LEFT 17 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
888 #define VK_UP 18 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
889 #define VK_RIGHT 19 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
890 #define VK_DOWN 20 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
891 #define VK_SELECT 21 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
892 #define VK_PRINT 22 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
893 #define VK_EXECUTE 23 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
894 #define VK_SNAPSHOT 24 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
895 #define VK_INSERT 25 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
896 #define VK_DELETE 26 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
897 #define VK_HELP 27 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
898 #define VK_LWIN 28 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
899 #define VK_RWIN 29 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
900 #define VK_NUMPAD0 30 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
901 #define VK_NUMPAD1 31 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
902 #define VK_NUMPAD2 32 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
903 #define VK_NUMPAD3 33 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
904 #define VK_NUMPAD4 34 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
905 #define VK_NUMPAD5 35 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
906 #define VK_NUMPAD6 36 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
907 #define VK_NUMPAD7 37 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
908 #define VK_NUMPAD8 38 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
909 #define VK_NUMPAD9 39 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
910 #define VK_MULTIPLY 40 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
911 #define VK_ADD 41 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
912 #define VK_SEPARATOR 42 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
913 #define VK_SUBTRACT 43 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
914 #define VK_DECIMAL 44 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
915 #define VK_DIVIDE 45 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
916 #define VK_F1 46 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
917 #define VK_F2 47 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
918 #define VK_F3 48 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
919 #define VK_F4 49 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
920 #define VK_F5 50 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
921 #define VK_F6 51 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
922 #define VK_F7 52 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
923 #define VK_F8 53 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
924 #define VK_F9 54 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
925 #define VK_F10 55 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
926 #define VK_F11 56 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
927 #define VK_F12 57 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
928 #define VK_F13 58 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
929 #define VK_F14 59 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
930 #define VK_F15 60 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
931 #define VK_F16 61 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
932 #define VK_F17 62 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
933 #define VK_F18 63 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
934 #define VK_F19 64 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
935 #define VK_F20 65 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
936 #define VK_F21 66 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
937 #define VK_F22 67 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
938 #define VK_F23 68 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
939 #define VK_F24 69 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
940 #define VK_NUMLOCK 70 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
941 #define VK_SCROLL 71 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
942 #define VK_LSHIFT 72 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
943 #define VK_RSHIFT 73 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
944 #define VK_LCONTROL 74 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
945 #define VK_RCONTROL 75 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
946 #define VK_LMENU 76 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
947 #define VK_RMENU 77 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
948 |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
949 /* Key Modifiers */ |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
950 #define KC_CTRL (1) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
951 #define KC_SHIFT (1 << 1) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
952 #define KC_ALT (1 << 2) |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
953 #endif |
aa420e366b2b
Android: Initial skeletal commit for Android support, almost nothing implemented...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2451
diff
changeset
|
954 |
2225
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
955 /* Template section, framework for new platform ports */ |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
956 #if defined(__TEMPLATE__) |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
957 #include <stdio.h> |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
958 #include <stdlib.h> |
2225
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
959 #include <stdarg.h> |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
960 #include <limits.h> |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
961 |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
962 /* Can remove this for your port when you know where MAX_PATH is */ |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
963 #ifndef MAX_PATH |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
964 #define MAX_PATH 260 |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
965 #endif |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
966 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
967 #define TRUE 1 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
968 #define FALSE 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
969 |
2225
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
970 typedef void *HWND; |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
971 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
972 typedef unsigned long ULONG; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
973 typedef long LONG; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
974 typedef unsigned short USHORT; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
975 typedef short SHORT; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
976 typedef unsigned short UWORD; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
977 typedef short WORD ; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
978 typedef unsigned char UCHAR; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
979 typedef char CHAR; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
980 typedef unsigned UINT; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
981 typedef int INT; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
982 typedef void *HMTX; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
983 typedef void *HEV; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
984 typedef void *HSHM; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
985 typedef void *HMOD; |
2225
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
986 typedef void *HTREEITEM; |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
987 typedef HWND HMENUI; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
988 typedef int DWTID; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
989 typedef unsigned long HICN; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
990 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
991 typedef struct _window_data { |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
992 UserData *root; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
993 HWND clickdefault; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
994 ULONG flags; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
995 void *data; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
996 } WindowData; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
997 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
998 typedef struct _hpixmap { |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
999 unsigned long width, height; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1000 /* ?? *pixmap; */ |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1001 HWND handle; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1002 } *HPIXMAP; |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1003 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1004 #define DW_DT_LEFT 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1005 #define DW_DT_QUERYEXTENT 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1006 #define DW_DT_UNDERSCORE 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1007 #define DW_DT_STRIKEOUT 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1008 #define DW_DT_TEXTATTRS 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1009 #define DW_DT_EXTERNALLEADING 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1010 #define DW_DT_CENTER 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1011 #define DW_DT_RIGHT 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1012 #define DW_DT_TOP 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1013 #define DW_DT_VCENTER 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1014 #define DW_DT_BOTTOM 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1015 #define DW_DT_HALFTONE 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1016 #define DW_DT_MNEMONIC 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1017 #define DW_DT_WORDBREAK 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1018 #define DW_DT_ERASERECT 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1019 |
2225
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1020 #define DW_FCF_CLOSEBUTTON 0 |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1021 #define DW_FCF_TITLEBAR 0 |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1022 #define DW_FCF_SYSMENU 0 |
2225
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1023 #define DW_FCF_MENU 0 |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1024 #define DW_FCF_SIZEBORDER 0 |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1025 #define DW_FCF_MINBUTTON 0 |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1026 #define DW_FCF_MAXBUTTON 0 |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1027 #define DW_FCF_MINMAX (DW_FCF_MINBUTTON|DW_FCF_MAXBUTTON) |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1028 #define DW_FCF_DLGBORDER 0 |
2225
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1029 #define DW_FCF_BORDER 0 |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1030 #define DW_FCF_TASKLIST 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1031 #define DW_FCF_NOMOVEWITHOWNER 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1032 #define DW_FCF_SYSMODAL 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1033 #define DW_FCF_HIDEBUTTON 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1034 #define DW_FCF_HIDEMAX 0 |
2225
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1035 #define DW_FCF_AUTOICON 0 |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1036 #define DW_FCF_MAXIMIZE 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1037 #define DW_FCF_MINIMIZE 0 |
1802
aedf5903db0a
Add DW_FCF_TEXTURED window style; relevant only for Mac port.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1795
diff
changeset
|
1038 #define DW_FCF_TEXTURED 0 |
1933
758f49e54566
Enable dw_windows_get_text() to return value of label under GTK.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1924
diff
changeset
|
1039 #define DW_FCF_FULLSCREEN 0 |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1040 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1041 #define DW_CFA_BITMAPORICON 1 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1042 #define DW_CFA_STRING (1 << 1) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1043 #define DW_CFA_ULONG (1 << 2) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1044 #define DW_CFA_TIME (1 << 3) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1045 #define DW_CFA_DATE (1 << 4) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1046 #define DW_CFA_CENTER (1 << 5) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1047 #define DW_CFA_LEFT (1 << 6) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1048 #define DW_CFA_RIGHT (1 << 7) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1049 #define DW_CFA_STRINGANDICON (1 << 8) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1050 #define DW_CFA_HORZSEPARATOR 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1051 #define DW_CFA_SEPARATOR 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1052 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1053 #define DW_CRA_SELECTED 1 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1054 #define DW_CRA_CURSORED (1 << 1) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1055 |
1871
3f571ad9b92e
First Mac round of changes aimed at separating the data and text
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1863
diff
changeset
|
1056 #define DW_CR_RETDATA (1 << 10) |
3f571ad9b92e
First Mac round of changes aimed at separating the data and text
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1863
diff
changeset
|
1057 |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1058 #define DW_LS_MULTIPLESEL 1 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1059 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1060 #define DW_LIT_NONE -1 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1061 |
2225
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1062 #define DW_MLE_CASESENSITIVE 0 |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1063 |
2225
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1064 #define DW_BS_NOBORDER 0 |
763
2cace4e6e69a
Added DW_BS_NOBORDER style which can be set on buttons with dw_window_set_style() to make them flat.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
745
diff
changeset
|
1065 |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1066 #define DW_POINTER_DEFAULT 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1067 #define DW_POINTER_ARROW 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1068 #define DW_POINTER_CLOCK 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1069 #define DW_POINTER_QUESTION 0 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1070 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1071 #define HWND_DESKTOP ((HWND)0) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1072 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1073 /* flag values for dw_messagebox() */ |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1074 #define DW_MB_OK (1 << 1) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1075 #define DW_MB_OKCANCEL (1 << 2) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1076 #define DW_MB_YESNO (1 << 3) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1077 #define DW_MB_YESNOCANCEL (1 << 4) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1078 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1079 #define DW_MB_WARNING (1 << 10) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1080 #define DW_MB_ERROR (1 << 11) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1081 #define DW_MB_INFORMATION (1 << 12) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1082 #define DW_MB_QUESTION (1 << 13) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1083 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1084 /* Virtual Key Codes */ |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1085 #define VK_LBUTTON 0 |
2226
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1086 #define VK_RBUTTON 1 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1087 #define VK_CANCEL 2 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1088 #define VK_MBUTTON 3 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1089 #define VK_BACK 4 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1090 #define VK_TAB 5 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1091 #define VK_CLEAR 6 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1092 #define VK_RETURN 7 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1093 #define VK_MENU 8 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1094 #define VK_PAUSE 9 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1095 #define VK_CAPITAL 10 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1096 #define VK_ESCAPE 11 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1097 #define VK_SPACE 12 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1098 #define VK_PRIOR 13 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1099 #define VK_NEXT 14 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1100 #define VK_END 15 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1101 #define VK_HOME 16 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1102 #define VK_LEFT 17 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1103 #define VK_UP 18 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1104 #define VK_RIGHT 19 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1105 #define VK_DOWN 20 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1106 #define VK_SELECT 21 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1107 #define VK_PRINT 22 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1108 #define VK_EXECUTE 23 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1109 #define VK_SNAPSHOT 24 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1110 #define VK_INSERT 25 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1111 #define VK_DELETE 26 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1112 #define VK_HELP 27 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1113 #define VK_LWIN 28 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1114 #define VK_RWIN 29 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1115 #define VK_NUMPAD0 30 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1116 #define VK_NUMPAD1 31 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1117 #define VK_NUMPAD2 32 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1118 #define VK_NUMPAD3 33 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1119 #define VK_NUMPAD4 34 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1120 #define VK_NUMPAD5 35 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1121 #define VK_NUMPAD6 36 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1122 #define VK_NUMPAD7 37 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1123 #define VK_NUMPAD8 38 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1124 #define VK_NUMPAD9 39 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1125 #define VK_MULTIPLY 40 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1126 #define VK_ADD 41 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1127 #define VK_SEPARATOR 42 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1128 #define VK_SUBTRACT 43 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1129 #define VK_DECIMAL 44 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1130 #define VK_DIVIDE 45 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1131 #define VK_F1 46 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1132 #define VK_F2 47 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1133 #define VK_F3 48 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1134 #define VK_F4 49 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1135 #define VK_F5 50 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1136 #define VK_F6 51 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1137 #define VK_F7 52 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1138 #define VK_F8 53 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1139 #define VK_F9 54 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1140 #define VK_F10 55 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1141 #define VK_F11 56 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1142 #define VK_F12 57 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1143 #define VK_F13 58 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1144 #define VK_F14 59 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1145 #define VK_F15 60 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1146 #define VK_F16 61 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1147 #define VK_F17 62 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1148 #define VK_F18 63 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1149 #define VK_F19 64 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1150 #define VK_F20 65 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1151 #define VK_F21 66 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1152 #define VK_F22 67 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1153 #define VK_F23 68 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1154 #define VK_F24 69 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1155 #define VK_NUMLOCK 70 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1156 #define VK_SCROLL 71 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1157 #define VK_LSHIFT 72 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1158 #define VK_RSHIFT 73 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1159 #define VK_LCONTROL 74 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1160 #define VK_RCONTROL 75 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1161 #define VK_LMENU 76 |
2de088fb5dd4
Added some missing APIs from the template, and changes so it builds dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2225
diff
changeset
|
1162 #define VK_RMENU 77 |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1163 |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1164 /* Key Modifiers */ |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1165 #define KC_CTRL (1) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1166 #define KC_SHIFT (1 << 1) |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1167 #define KC_ALT (1 << 2) |
2225
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1168 #endif |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1169 |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1170 typedef struct _item { |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1171 /* Item type - Box or Item */ |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1172 int type; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1173 /* Handle to Frame or Window */ |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1174 HWND hwnd; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1175 /* Width and Height of static size */ |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1176 int width, height, origwidth, origheight; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1177 /* Size Type - Static or Expand */ |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1178 int hsize, vsize; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1179 /* Padding */ |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1180 int pad; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1181 } Item; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1182 |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1183 typedef struct _box { |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1184 #if defined(__WIN32__) |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1185 ColorInfo cinfo; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1186 int fullscreen; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1187 #elif defined(__OS2__) || defined(__EMX__) |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1188 PFNWP oldproc; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1189 UserData *root; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1190 HWND hwndtitle, hwnd; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1191 int titlebar; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1192 #endif |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1193 /* Number of items in the box */ |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1194 int count; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1195 /* Box type - horizontal or vertical */ |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1196 int type; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1197 /* Keep track of how box is packed */ |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1198 int hsize, vsize; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1199 /* Padding */ |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1200 int pad, grouppadx, grouppady; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1201 /* Groupbox */ |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1202 HWND grouphwnd; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1203 /* Default item */ |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1204 HWND defaultitem; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1205 /* Used as temporary storage in the calculation stage */ |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1206 int usedpadx, usedpady, minheight, minwidth; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1207 /* Used for calculating individual item ratios */ |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1208 int width, height; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1209 /* Any combinations of flags describing the box */ |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1210 unsigned long flags; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1211 /* Array of item structures */ |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1212 struct _item *items; |
1ec6300a627b
Updated the platform template for the new 3.1 APIs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2210
diff
changeset
|
1213 } Box; |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1214 |
3 | 1215 #else |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
1216 /* GTK Specific section */ |
1893
c6b47f3db988
Oops missed change to dw.h adding _GNU_SOURCE define to the header.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1887
diff
changeset
|
1217 #define _GNU_SOURCE |
3 | 1218 #include <gtk/gtk.h> |
2264
5c981407b0f3
GTK4: Add experimental support for GTK4... This is in progress and doesn't
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2239
diff
changeset
|
1219 #if GTK_MAJOR_VERSION < 4 |
634
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
1220 #ifdef GDK_WINDOWING_X11 |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
1221 # include <gdk/gdkx.h> |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
1222 #else |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
1223 # include <gdk/gdk.h> |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
1224 #endif |
3 | 1225 #include <gdk/gdkprivate.h> |
2264
5c981407b0f3
GTK4: Add experimental support for GTK4... This is in progress and doesn't
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2239
diff
changeset
|
1226 #endif |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
1227 #include <gdk/gdkkeysyms.h> |
3 | 1228 #include <pthread.h> |
634
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
1229 #if !defined(GDK_WINDOWING_WIN32) |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
1230 # include <dlfcn.h> |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
633
diff
changeset
|
1231 #endif |
3 | 1232 |
1233 #define DW_DT_LEFT 1 | |
1234 #define DW_DT_UNDERSCORE (1 << 1) | |
1235 #define DW_DT_STRIKEOUT (1 << 2) | |
1236 #define DW_DT_CENTER (1 << 3) | |
1237 #define DW_DT_RIGHT (1 << 4) | |
1238 #define DW_DT_TOP (1 << 5) | |
1239 #define DW_DT_VCENTER (1 << 6) | |
1240 #define DW_DT_BOTTOM (1 << 7) | |
1241 #define DW_DT_HALFTONE (1 << 8) | |
1242 #define DW_DT_MNEMONIC (1 << 9) | |
1243 #define DW_DT_WORDBREAK (1 << 10) | |
1244 #define DW_DT_ERASERECT (1 << 11) | |
1245 | |
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
|
1246 /* 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
|
1247 #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
|
1248 #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
|
1249 #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
|
1250 |
3 | 1251 #define DW_FCF_TITLEBAR 1 |
1252 #define DW_FCF_SYSMENU (1 << 1) | |
1253 #define DW_FCF_MENU (1 << 2) | |
1254 #define DW_FCF_SIZEBORDER (1 << 3) | |
1255 #define DW_FCF_MINBUTTON (1 << 4) | |
1256 #define DW_FCF_MAXBUTTON (1 << 5) | |
1257 #define DW_FCF_MINMAX (1 << 6) | |
1258 #define DW_FCF_DLGBORDER (1 << 9) | |
1259 #define DW_FCF_BORDER (1 << 10) | |
1260 #define DW_FCF_TASKLIST (1 << 12) | |
1261 #define DW_FCF_NOMOVEWITHOWNER (1 << 14) | |
1262 #define DW_FCF_SYSMODAL (1 << 15) | |
1263 #define DW_FCF_HIDEBUTTON (1 << 16) | |
1264 #define DW_FCF_HIDEMAX (1 << 17) | |
1265 #define DW_FCF_AUTOICON (1 << 18) | |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
1266 #define DW_FCF_MAXIMIZE (1 << 19) |
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
1267 #define DW_FCF_MINIMIZE (1 << 20) |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1268 #define DW_FCF_CLOSEBUTTON (1 << 21) |
1802
aedf5903db0a
Add DW_FCF_TEXTURED window style; relevant only for Mac port.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1795
diff
changeset
|
1269 #define DW_FCF_TEXTURED 0 |
1933
758f49e54566
Enable dw_windows_get_text() to return value of label under GTK.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1924
diff
changeset
|
1270 #define DW_FCF_FULLSCREEN (1 << 22) |
3 | 1271 |
1272 #define DW_CFA_BITMAPORICON 1 | |
1273 #define DW_CFA_STRING (1 << 1) | |
1274 #define DW_CFA_ULONG (1 << 2) | |
1275 #define DW_CFA_TIME (1 << 3) | |
1276 #define DW_CFA_DATE (1 << 4) | |
1277 #define DW_CFA_CENTER (1 << 5) | |
1278 #define DW_CFA_LEFT (1 << 6) | |
1279 #define DW_CFA_RIGHT (1 << 7) | |
1280 #define DW_CFA_HORZSEPARATOR (1 << 8) | |
1281 #define DW_CFA_SEPARATOR (1 << 9) | |
471
fa05a1a0f9b3
Support for "column-click" signal
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
456
diff
changeset
|
1282 #define DW_CFA_STRINGANDICON (1 << 10) |
3 | 1283 |
69
9510897c0b03
Added new container functions, and implemented some missing functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
67
diff
changeset
|
1284 #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
|
1285 #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
|
1286 |
1871
3f571ad9b92e
First Mac round of changes aimed at separating the data and text
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1863
diff
changeset
|
1287 #define DW_CR_RETDATA (1 << 10) |
3f571ad9b92e
First Mac round of changes aimed at separating the data and text
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1863
diff
changeset
|
1288 |
3 | 1289 #define DW_LS_MULTIPLESEL 1 |
1290 | |
1291 #define DW_LIT_NONE -1 | |
1292 | |
1293 #define DW_MLE_CASESENSITIVE 1 | |
1294 | |
763
2cace4e6e69a
Added DW_BS_NOBORDER style which can be set on buttons with dw_window_set_style() to make them flat.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
745
diff
changeset
|
1295 #define DW_BS_NOBORDER 1 |
2cace4e6e69a
Added DW_BS_NOBORDER style which can be set on buttons with dw_window_set_style() to make them flat.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
745
diff
changeset
|
1296 |
532
1e60e98a9168
Forgot DW_POINTER_DEFAULT on Unix.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
531
diff
changeset
|
1297 #define DW_POINTER_DEFAULT 0 |
2265
63bb97e94cd3
GTK4: More work on conversion... the amount of changes is really ridiculous.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2264
diff
changeset
|
1298 #if GTK_MAJOR_VERSION > 3 |
63bb97e94cd3
GTK4: More work on conversion... the amount of changes is really ridiculous.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2264
diff
changeset
|
1299 #define DW_POINTER_ARROW 1 |
63bb97e94cd3
GTK4: More work on conversion... the amount of changes is really ridiculous.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2264
diff
changeset
|
1300 #define DW_POINTER_CLOCK 2 |
63bb97e94cd3
GTK4: More work on conversion... the amount of changes is really ridiculous.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2264
diff
changeset
|
1301 #define DW_POINTER_QUESTION 3 |
63bb97e94cd3
GTK4: More work on conversion... the amount of changes is really ridiculous.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2264
diff
changeset
|
1302 #else |
390
2dbed2673df0
Change mouse cursor definitions under GTK. DW_POINTER_ARROW now uses "default"
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
384
diff
changeset
|
1303 #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
|
1304 #define DW_POINTER_CLOCK GDK_WATCH |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1305 #define DW_POINTER_QUESTION GDK_QUESTION_ARROW |
2265
63bb97e94cd3
GTK4: More work on conversion... the amount of changes is really ridiculous.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2264
diff
changeset
|
1306 #endif |
22
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
1307 |
3 | 1308 #define HWND_DESKTOP ((HWND)0) |
1309 | |
400
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1310 /* flag values for dw_messagebox() */ |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1311 #define DW_MB_OK (1 << 1) |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1312 #define DW_MB_OKCANCEL (1 << 2) |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1313 #define DW_MB_YESNO (1 << 3) |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1314 #define DW_MB_YESNOCANCEL (1 << 4) |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1315 |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1316 #define DW_MB_WARNING (1 << 10) |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1317 #define DW_MB_ERROR (1 << 11) |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1318 #define DW_MB_INFORMATION (1 << 12) |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1319 #define DW_MB_QUESTION (1 << 13) |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1320 |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
1321 /* Virtual Key Codes */ |
775
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1322 #if GTK_MAJOR_VERSION > 2 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1323 #define VK_LBUTTON GDK_KEY_Pointer_Button1 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1324 #define VK_RBUTTON GDK_KEY_Pointer_Button3 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1325 #define VK_CANCEL GDK_KEY_Cancel |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1326 #define VK_MBUTTON GDK_KEY_Pointer_Button2 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1327 #define VK_BACK GDK_KEY_BackSpace |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1328 #define VK_TAB GDK_KEY_Tab |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1329 #define VK_CLEAR GDK_KEY_Clear |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1330 #define VK_RETURN GDK_KEY_Return |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1331 #define VK_MENU GDK_KEY_Menu |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1332 #define VK_PAUSE GDK_KEY_Pause |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1333 #define VK_CAPITAL GDK_KEY_Caps_Lock |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1334 #define VK_ESCAPE GDK_KEY_Escape |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1335 #define VK_SPACE GDK_KEY_space |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1336 #define VK_PRIOR GDK_KEY_Page_Up |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1337 #define VK_NEXT GDK_KEY_Page_Down |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1338 #define VK_END GDK_KEY_End |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1339 #define VK_HOME GDK_KEY_Home |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1340 #define VK_LEFT GDK_KEY_Left |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1341 #define VK_UP GDK_KEY_Up |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1342 #define VK_RIGHT GDK_KEY_Right |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1343 #define VK_DOWN GDK_KEY_Down |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1344 #define VK_SELECT GDK_KEY_Select |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1345 #define VK_PRINT GDK_KEY_Sys_Req |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1346 #define VK_EXECUTE GDK_KEY_Execute |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1347 #define VK_SNAPSHOT GDK_KEY_Print |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1348 #define VK_INSERT GDK_KEY_Insert |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1349 #define VK_DELETE GDK_KEY_Delete |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1350 #define VK_HELP GDK_KEY_Help |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1351 #define VK_LWIN GDK_KEY_Super_L |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1352 #define VK_RWIN GDK_KEY_Super_R |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1353 #define VK_NUMPAD0 GDK_KEY_KP_0 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1354 #define VK_NUMPAD1 GDK_KEY_KP_1 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1355 #define VK_NUMPAD2 GDK_KEY_KP_2 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1356 #define VK_NUMPAD3 GDK_KEY_KP_3 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1357 #define VK_NUMPAD4 GDK_KEY_KP_4 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1358 #define VK_NUMPAD5 GDK_KEY_KP_5 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1359 #define VK_NUMPAD6 GDK_KEY_KP_6 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1360 #define VK_NUMPAD7 GDK_KEY_KP_7 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1361 #define VK_NUMPAD8 GDK_KEY_KP_8 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1362 #define VK_NUMPAD9 GDK_KEY_KP_9 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1363 #define VK_MULTIPLY GDK_KEY_KP_Multiply |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1364 #define VK_ADD GDK_KEY_KP_Add |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1365 #define VK_SEPARATOR GDK_KEY_KP_Separator |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1366 #define VK_SUBTRACT GDK_KEY_KP_Subtract |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1367 #define VK_DECIMAL GDK_KEY_KP_Decimal |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1368 #define VK_DIVIDE GDK_KEY_KP_Divide |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1369 #define VK_F1 GDK_KEY_F1 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1370 #define VK_F2 GDK_KEY_F2 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1371 #define VK_F3 GDK_KEY_F3 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1372 #define VK_F4 GDK_KEY_F4 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1373 #define VK_F5 GDK_KEY_F5 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1374 #define VK_F6 GDK_KEY_F6 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1375 #define VK_F7 GDK_KEY_F7 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1376 #define VK_F8 GDK_KEY_F8 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1377 #define VK_F9 GDK_KEY_F9 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1378 #define VK_F10 GDK_KEY_F10 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1379 #define VK_F11 GDK_KEY_F11 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1380 #define VK_F12 GDK_KEY_F12 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1381 #define VK_F13 GDK_KEY_F13 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1382 #define VK_F14 GDK_KEY_F14 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1383 #define VK_F15 GDK_KEY_F15 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1384 #define VK_F16 GDK_KEY_F16 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1385 #define VK_F17 GDK_KEY_F17 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1386 #define VK_F18 GDK_KEY_F18 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1387 #define VK_F19 GDK_KEY_F19 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1388 #define VK_F20 GDK_KEY_F20 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1389 #define VK_F21 GDK_KEY_F21 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1390 #define VK_F22 GDK_KEY_F22 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1391 #define VK_F23 GDK_KEY_F23 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1392 #define VK_F24 GDK_KEY_F24 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1393 #define VK_NUMLOCK GDK_KEY_Num_Lock |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1394 #define VK_SCROLL GDK_KEY_Scroll_Lock |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1395 #define VK_LSHIFT GDK_KEY_Shift_L |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1396 #define VK_RSHIFT GDK_KEY_Shift_R |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1397 #define VK_LCONTROL GDK_KEY_Control_L |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1398 #define VK_RCONTROL GDK_KEY_Control_R |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1399 #define VK_LMENU GDK_KEY_Menu |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1400 #define VK_RMENU GDK_KEY_Menu |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1401 |
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1402 #else |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
1403 #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
|
1404 #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
|
1405 #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
|
1406 #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
|
1407 #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
|
1408 #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
|
1409 #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
|
1410 #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
|
1411 #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
|
1412 #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
|
1413 #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
|
1414 #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
|
1415 #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
|
1416 #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
|
1417 #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
|
1418 #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
|
1419 #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
|
1420 #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
|
1421 #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
|
1422 #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
|
1423 #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
|
1424 #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
|
1425 #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
|
1426 #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
|
1427 #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
|
1428 #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
|
1429 #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
|
1430 #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
|
1431 #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
|
1432 #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
|
1433 #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
|
1434 #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
|
1435 #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
|
1436 #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
|
1437 #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
|
1438 #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
|
1439 #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
|
1440 #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
|
1441 #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
|
1442 #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
|
1443 #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
|
1444 #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
|
1445 #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
|
1446 #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
|
1447 #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
|
1448 #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
|
1449 #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
|
1450 #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
|
1451 #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
|
1452 #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
|
1453 #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
|
1454 #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
|
1455 #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
|
1456 #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
|
1457 #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
|
1458 #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
|
1459 #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
|
1460 #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
|
1461 #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
|
1462 #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
|
1463 #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
|
1464 #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
|
1465 #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
|
1466 #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
|
1467 #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
|
1468 #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
|
1469 #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
|
1470 #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
|
1471 #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
|
1472 #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
|
1473 #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
|
1474 #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
|
1475 #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
|
1476 #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
|
1477 #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
|
1478 #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
|
1479 #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
|
1480 #define VK_RMENU GDK_Menu |
775
5ec50e403a8a
Added initial support for GTK 3.0. Split it off into its own directory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
768
diff
changeset
|
1481 #endif |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
1482 |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
1483 /* Key Modifiers */ |
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
1484 #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
|
1485 #define KC_SHIFT GDK_SHIFT_MASK |
2266
bb0690c04413
GTK4: First buildable version... although tons still left to do.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2265
diff
changeset
|
1486 #if GTK_MAJOR_VERSION > 3 |
bb0690c04413
GTK4: First buildable version... although tons still left to do.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2265
diff
changeset
|
1487 #define KC_ALT GDK_ALT_MASK |
bb0690c04413
GTK4: First buildable version... although tons still left to do.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2265
diff
changeset
|
1488 #else |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
1489 #define KC_ALT GDK_MOD1_MASK |
2266
bb0690c04413
GTK4: First buildable version... although tons still left to do.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2265
diff
changeset
|
1490 #endif |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
262
diff
changeset
|
1491 |
3 | 1492 typedef GtkWidget *HWND; |
38
538db2a48bac
Added typecast to MPARAM.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
34
diff
changeset
|
1493 #ifndef _ENVRNMNT_H |
3 | 1494 typedef unsigned long ULONG; |
38
538db2a48bac
Added typecast to MPARAM.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
34
diff
changeset
|
1495 #endif |
3 | 1496 typedef long LONG; |
1497 typedef unsigned short USHORT; | |
1498 typedef short SHORT; | |
236
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
1499 typedef unsigned short UWORD; |
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
1500 typedef short WORD ; |
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
1501 typedef unsigned char UCHAR; |
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
1502 typedef char CHAR; |
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
1503 typedef unsigned UINT; |
5592cdeb29cf
Make sure all platforms have the same typedefs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
224
diff
changeset
|
1504 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
|
1505 typedef pthread_mutex_t *HMTX; |
3 | 1506 typedef struct _dw_unix_event { |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1507 pthread_mutex_t mutex; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1508 pthread_cond_t event; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1509 pthread_t thread; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1510 int alive; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1511 int posted; |
3 | 1512 } *HEV; |
1513 typedef pthread_t DWTID; | |
157
a07dd2e819f3
Added module support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
155
diff
changeset
|
1514 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
|
1515 struct _dw_unix_shm { |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1516 int fd; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1517 char *path; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1518 int sid; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1519 int size; |
558
05060ce4d6ae
Fixes for the new shared memory and named event code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
557
diff
changeset
|
1520 }; |
3 | 1521 |
1522 typedef struct _hpixmap { | |
633
87db549e79bc
Add dw_polygon_draw() to draw closed polygons.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
624
diff
changeset
|
1523 unsigned long width, height; |
1146
9d97610b2140
Adding dw_pixmap_set_font() which is equivalent to dw_window_set_font() except for pixmaps.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1136
diff
changeset
|
1524 HWND handle; |
1148
439f276042cc
Implemented dw_pixmap_set_font() on GTK3.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1146
diff
changeset
|
1525 char *font; |
1253
28c2c7e6671c
On GTK2 save the original pixbuf that is loaded so we can use it
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1243
diff
changeset
|
1526 #if GTK_MAJOR_VERSION > 1 |
28c2c7e6671c
On GTK2 save the original pixbuf that is loaded so we can use it
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1243
diff
changeset
|
1527 GdkPixbuf *pixbuf; /* the actual image */ |
28c2c7e6671c
On GTK2 save the original pixbuf that is loaded so we can use it
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1243
diff
changeset
|
1528 #endif |
776
425f3d46b75f
Accidentally clobbered something in dw.h required for GTK 2.x.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
775
diff
changeset
|
1529 #if GTK_MAJOR_VERSION > 2 |
815
c1e93dd575a5
Initial implementation of a slightly disjointed dual cairo_surface gdkpixbuf image model.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
776
diff
changeset
|
1530 cairo_surface_t *image; /* Going to have dual storage for now */ |
776
425f3d46b75f
Accidentally clobbered something in dw.h required for GTK 2.x.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
775
diff
changeset
|
1531 #else |
1004
cb81c08bd8c3
Correct OS/2 question mark pointer #define; should be SPTR_ICONQUESTION despite some online
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
987
diff
changeset
|
1532 GdkPixmap *pixmap; /* the actual image */ |
cb81c08bd8c3
Correct OS/2 question mark pointer #define; should be SPTR_ICONQUESTION despite some online
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
987
diff
changeset
|
1533 GdkBitmap *bitmap; /* if not null, the image mask representing the transparency mask */ |
1168
4e8f00c31c91
Added basic printing support for GTK 2.10 and above...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1157
diff
changeset
|
1534 void *image; /* Opaque handle to a cairo_surface_t for printing */ |
776
425f3d46b75f
Accidentally clobbered something in dw.h required for GTK 2.x.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
775
diff
changeset
|
1535 #endif |
3 | 1536 } *HPIXMAP; |
1537 | |
2271
1c52cd5a817f
GTK4: More refactoring, and started working on menus, but not entirely sure
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2270
diff
changeset
|
1538 typedef void *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
|
1539 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
|
1540 typedef void *HSHM; |
977
634bb6cecef1
Oops... missed including the header change in that last commit.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
975
diff
changeset
|
1541 typedef void *HICN; |
185
f55677513954
Updated the menu code.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
182
diff
changeset
|
1542 |
2202
c677d728e143
GTK3: Switch to using GResource for compiled in image resources.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2171
diff
changeset
|
1543 /* As of Dynamic Windows 3.1 GResource is default if supported. |
2203
12fb7f32f3a9
GTK: DW_INCLUDE_DEPRECATED should bring in DW_INCLUDE_DEPRECATED_RESOURCES.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2202
diff
changeset
|
1544 * Using --with-deprecated at configure time will include |
12fb7f32f3a9
GTK: DW_INCLUDE_DEPRECATED should bring in DW_INCLUDE_DEPRECATED_RESOURCES.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2202
diff
changeset
|
1545 * support for our old home brewed resource system. |
2202
c677d728e143
GTK3: Switch to using GResource for compiled in image resources.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2171
diff
changeset
|
1546 * GLib 2.32 is required for GResource, so we automatically |
c677d728e143
GTK3: Switch to using GResource for compiled in image resources.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2171
diff
changeset
|
1547 * enable our old system if using an old Glib. |
c677d728e143
GTK3: Switch to using GResource for compiled in image resources.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2171
diff
changeset
|
1548 * Test for GResource using: dwindows-config --gresource |
c677d728e143
GTK3: Switch to using GResource for compiled in image resources.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2171
diff
changeset
|
1549 */ |
c677d728e143
GTK3: Switch to using GResource for compiled in image resources.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2171
diff
changeset
|
1550 #ifndef DW_INCLUDE_DEPRECATED_RESOURCES |
2204
b86ae2abb3b3
GTK: Added GTK2 support for GResource embedded images.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2203
diff
changeset
|
1551 #if defined(DW_INCLUDE_DEPRECATED) || GTK_MAJOR_VERSION < 2 || !GLIB_CHECK_VERSION(2,32,0) |
2202
c677d728e143
GTK3: Switch to using GResource for compiled in image resources.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2171
diff
changeset
|
1552 #define DW_INCLUDE_DEPRECATED_RESOURCES 1 |
c677d728e143
GTK3: Switch to using GResource for compiled in image resources.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2171
diff
changeset
|
1553 #endif |
c677d728e143
GTK3: Switch to using GResource for compiled in image resources.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2171
diff
changeset
|
1554 #endif |
c677d728e143
GTK3: Switch to using GResource for compiled in image resources.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2171
diff
changeset
|
1555 |
c677d728e143
GTK3: Switch to using GResource for compiled in image resources.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2171
diff
changeset
|
1556 /* Only reference our old style resources if required. */ |
c677d728e143
GTK3: Switch to using GResource for compiled in image resources.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2171
diff
changeset
|
1557 #ifdef DW_INCLUDE_DEPRECATED_RESOURCES |
2204
b86ae2abb3b3
GTK: Added GTK2 support for GResource embedded images.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2203
diff
changeset
|
1558 typedef struct _resource_struct { |
b86ae2abb3b3
GTK: Added GTK2 support for GResource embedded images.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2203
diff
changeset
|
1559 long resource_max, *resource_id; |
b86ae2abb3b3
GTK: Added GTK2 support for GResource embedded images.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2203
diff
changeset
|
1560 char **resource_data; |
b86ae2abb3b3
GTK: Added GTK2 support for GResource embedded images.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2203
diff
changeset
|
1561 } DWResources; |
b86ae2abb3b3
GTK: Added GTK2 support for GResource embedded images.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2203
diff
changeset
|
1562 |
3 | 1563 #if !defined(DW_RESOURCES) || defined(BUILD_DLL) |
2159
48172881415c
GTK: Add DW_UNUSED() macro for defining variables that may be unused.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2141
diff
changeset
|
1564 static DWResources DW_UNUSED(_resources) = { 0, 0, 0 }; |
3 | 1565 #else |
1566 extern DWResources _resources; | |
1567 #endif | |
2202
c677d728e143
GTK3: Switch to using GResource for compiled in image resources.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2171
diff
changeset
|
1568 #endif |
3 | 1569 |
1570 #endif | |
1571 | |
1572 #if !defined(__OS2__) && !defined(__EMX__) | |
1573 typedef struct _CDATE | |
1574 { | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1575 UCHAR day; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1576 UCHAR month; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1577 USHORT year; |
3 | 1578 } CDATE; |
1579 typedef CDATE *PCDATE; | |
1580 | |
1581 typedef struct _CTIME | |
1582 { | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1583 UCHAR hours; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1584 UCHAR minutes; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1585 UCHAR seconds; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1586 UCHAR ucReserved; |
3 | 1587 } CTIME; |
1588 typedef CTIME *PCTIME; | |
1589 #endif | |
1590 | |
2451
44b77654c406
Add DW_DIR_SEPARATOR for easy access to the separator characters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2410
diff
changeset
|
1591 /* Define a few things missing on OS/2 and Windows */ |
44b77654c406
Add DW_DIR_SEPARATOR for easy access to the separator characters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2410
diff
changeset
|
1592 #if defined(__OS2__) || (defined(__WIN32__) && !defined(GDK_WINDOWING_WIN32)) || \ |
44b77654c406
Add DW_DIR_SEPARATOR for easy access to the separator characters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2410
diff
changeset
|
1593 (defined(WINNT) && !defined(GDK_WINDOWING_WIN32)) || defined(__EMX__) |
3 | 1594 typedef unsigned long DWTID; |
2451
44b77654c406
Add DW_DIR_SEPARATOR for easy access to the separator characters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2410
diff
changeset
|
1595 #define DW_DIR_SEPARATOR '\\' |
3 | 1596 #endif |
1597 | |
2127
663467f6eee4
Code cleanup: Add constants to header for dark mode, buffer sizes and Unicode support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2114
diff
changeset
|
1598 /* Some dark mode constants for supported platforms */ |
663467f6eee4
Code cleanup: Add constants to header for dark mode, buffer sizes and Unicode support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2114
diff
changeset
|
1599 #define DW_DARK_MODE_DISABLED 0 |
663467f6eee4
Code cleanup: Add constants to header for dark mode, buffer sizes and Unicode support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2114
diff
changeset
|
1600 #define DW_DARK_MODE_BASIC 1 |
663467f6eee4
Code cleanup: Add constants to header for dark mode, buffer sizes and Unicode support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2114
diff
changeset
|
1601 #define DW_DARK_MODE_FULL 2 |
663467f6eee4
Code cleanup: Add constants to header for dark mode, buffer sizes and Unicode support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2114
diff
changeset
|
1602 #define DW_DARK_MODE_FORCED 3 |
663467f6eee4
Code cleanup: Add constants to header for dark mode, buffer sizes and Unicode support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2114
diff
changeset
|
1603 |
663467f6eee4
Code cleanup: Add constants to header for dark mode, buffer sizes and Unicode support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2114
diff
changeset
|
1604 /* Application ID support lengths */ |
663467f6eee4
Code cleanup: Add constants to header for dark mode, buffer sizes and Unicode support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2114
diff
changeset
|
1605 #define _DW_APP_ID_SIZE 100 |
663467f6eee4
Code cleanup: Add constants to header for dark mode, buffer sizes and Unicode support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2114
diff
changeset
|
1606 |
2083
f1acc157b2dd
Win: Correctly show "IE" as HTML renderer if built with Edge support...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2081
diff
changeset
|
1607 /* Use at least the linux utsname limit to avoid gcc fortify warnings */ |
2210
7677e1083d07
Increase _DW_ENV_STRING_SIZE to 257 bytes, this is the maximum size the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2205
diff
changeset
|
1608 #define _DW_ENV_STRING_SIZE 257 |
2083
f1acc157b2dd
Win: Correctly show "IE" as HTML renderer if built with Edge support...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2081
diff
changeset
|
1609 |
3 | 1610 typedef struct _dwenv { |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1611 /* Operating System Name and DW Build Date/Time */ |
2083
f1acc157b2dd
Win: Correctly show "IE" as HTML renderer if built with Edge support...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2081
diff
changeset
|
1612 char osName[_DW_ENV_STRING_SIZE], buildDate[_DW_ENV_STRING_SIZE], buildTime[_DW_ENV_STRING_SIZE]; |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1613 /* Versions and builds */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1614 short MajorVersion, MinorVersion, MajorBuild, MinorBuild; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1615 /* Dynamic Window version */ |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1616 short DWMajorVersion, DWMinorVersion, DWSubVersion; |
2081
24875681eec5
Added htmlEngine to DWEnv
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2077
diff
changeset
|
1617 /* Which HTML engine is compiled in */ |
2083
f1acc157b2dd
Win: Correctly show "IE" as HTML renderer if built with Edge support...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2081
diff
changeset
|
1618 char htmlEngine[_DW_ENV_STRING_SIZE]; |
3 | 1619 } DWEnv; |
1620 | |
1621 | |
1622 typedef struct _dwexpose { | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1623 int x, y; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1624 int width, height; |
3 | 1625 } DWExpose; |
1626 | |
1627 typedef struct _dwdialog { | |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1628 HEV eve; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1629 int done; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1630 int method; |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1631 void *data, *result; |
2270
819f2492c85f
GTK4: More signal cleanup, fix various issues with windows and dialogs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2266
diff
changeset
|
1632 #if GTK_MAJOR_VERSION > 3 |
819f2492c85f
GTK4: More signal cleanup, fix various issues with windows and dialogs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2266
diff
changeset
|
1633 GMainLoop *mainloop; |
819f2492c85f
GTK4: More signal cleanup, fix various issues with windows and dialogs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2266
diff
changeset
|
1634 #endif |
3 | 1635 } DWDialog; |
1636 | |
1136
1a5b0908659b
Initial implementation of the DynamicWindows Print object for GTK3.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1108
diff
changeset
|
1637 typedef void *HPRINT; |
1a5b0908659b
Initial implementation of the DynamicWindows Print object for GTK3.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1108
diff
changeset
|
1638 |
3 | 1639 #define DW_SIGNAL_FUNC(a) ((void *)a) |
1640 | |
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
|
1641 #define DW_DESKTOP HWND_DESKTOP |
7
005fa766e8c2
Updates to latest build.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
1642 #define DW_MINIMIZED 1 |
005fa766e8c2
Updates to latest build.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
3
diff
changeset
|
1643 |
3 | 1644 #define DW_BUTTON1_MASK 1 |
1645 #define DW_BUTTON2_MASK (1 << 1) | |
1646 #define DW_BUTTON3_MASK (1 << 2) | |
1647 | |
1648 #define DW_EXEC_CON 0 | |
1649 #define DW_EXEC_GUI 1 | |
1650 | |
449
787cc1e27897
Add support for directory browsing under Win32. DW_DIRECTORY_OPEN can be
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
446
diff
changeset
|
1651 #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
|
1652 #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
|
1653 #define DW_DIRECTORY_OPEN 2 |
3 | 1654 |
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
|
1655 #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
|
1656 #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
|
1657 |
1157
79bd0aff0bc2
Added DW_TIMEOUT_INFINITE constant to the header file.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1152
diff
changeset
|
1658 #define DW_TIMEOUT_INFINITE ((unsigned long)-1) |
79bd0aff0bc2
Added DW_TIMEOUT_INFINITE constant to the header file.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1152
diff
changeset
|
1659 |
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
|
1660 /* 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
|
1661 #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
|
1662 #define BOXVERT DW_VERT |
1483
73f2ad84d4ec
Fixed OS/2 windows being shown when setting position/size.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1468
diff
changeset
|
1663 #define DW_FCF_SHELLPOSITION 0 |
73f2ad84d4ec
Fixed OS/2 windows being shown when setting position/size.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1468
diff
changeset
|
1664 #define DW_FCF_NOBYTEALIGN 0 |
1535
2913bb58f439
Added DW_FCF_COMPOSITED frame creation flag, used only on Windows currently...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1528
diff
changeset
|
1665 #define DW_FCF_VERTSCROLL 0 |
2913bb58f439
Added DW_FCF_COMPOSITED frame creation flag, used only on Windows currently...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1528
diff
changeset
|
1666 #define DW_FCF_HORZSCROLL 0 |
3 | 1667 |
1483
73f2ad84d4ec
Fixed OS/2 windows being shown when setting position/size.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1468
diff
changeset
|
1668 /* Scrolling constants */ |
22
6a246b3bb14f
Added tree widgets, fixed some delete event processing, fixed a layout bug
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
15
diff
changeset
|
1669 #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
|
1670 #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
|
1671 #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
|
1672 #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
|
1673 |
400
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1674 /* return values for dw_messagebox() */ |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1675 #define DW_MB_RETURN_OK 0 |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1676 #define DW_MB_RETURN_YES 1 |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1677 #define DW_MB_RETURN_NO 0 |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1678 #define DW_MB_RETURN_CANCEL 2 |
3d4c34bb7834
Add #defines for dw_messagebox()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
390
diff
changeset
|
1679 |
3 | 1680 #define DW_PIXMAP_WIDTH(x) (x ? x->width : 0) |
1681 #define DW_PIXMAP_HEIGHT(x) (x ? x->height : 0) | |
1682 | |
62
2be5174bdb5d
Sync with latest DW code. Tab and RGB fixes.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
61
diff
changeset
|
1683 #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
|
1684 #define DW_RGB_TRANSPARENT (0x0F000000) |
3 | 1685 #define DW_RGB_MASK (0x00FFFFFF) |
1686 #define DW_RED_MASK (0x000000FF) | |
1687 #define DW_GREEN_MASK (0x0000FF00) | |
1688 #define DW_BLUE_MASK (0x00FF0000) | |
1689 #define DW_RED_VALUE(a) (a & DW_RED_MASK) | |
1690 #define DW_GREEN_VALUE(a) ((a & DW_GREEN_MASK) >> 8) | |
1691 #define DW_BLUE_VALUE(a) ((a & DW_BLUE_MASK) >> 16) | |
1103
bf932c9316ff
Minor change to the DW_RGB() macro to avoid compiler warnings under certain circumstances.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1102
diff
changeset
|
1692 #define DW_RGB(a, b, c) (0xF0000000 | (a) | (b) << 8 | (c) << 16) |
3 | 1693 |
1863
0656c716dc9f
Added a few convenience paramater macros to match some code I added in godwindows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1861
diff
changeset
|
1694 /* Menu convenience paramaters */ |
325
e5f0613b65cd
Added DW_MENU_SEPARATOR.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
317
diff
changeset
|
1695 #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
|
1696 #define DW_NOMENU 0 |
1305
18a31ab94e3d
Added DW_MENU_AUTO and DW_MENU_POPUP flags that can be passed to dw_menu_append_item() in the id field.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1291
diff
changeset
|
1697 #define DW_MENU_AUTO 0 |
18a31ab94e3d
Added DW_MENU_AUTO and DW_MENU_POPUP flags that can be passed to dw_menu_append_item() in the id field.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1291
diff
changeset
|
1698 #define DW_MENU_POPUP (unsigned long)-1 |
325
e5f0613b65cd
Added DW_MENU_SEPARATOR.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
317
diff
changeset
|
1699 |
1863
0656c716dc9f
Added a few convenience paramater macros to match some code I added in godwindows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1861
diff
changeset
|
1700 /* Convenience parameters for various types */ |
0656c716dc9f
Added a few convenience paramater macros to match some code I added in godwindows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1861
diff
changeset
|
1701 #define DW_NOHWND 0 |
0656c716dc9f
Added a few convenience paramater macros to match some code I added in godwindows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1861
diff
changeset
|
1702 #define DW_NOHTIMER 0 |
0656c716dc9f
Added a few convenience paramater macros to match some code I added in godwindows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1861
diff
changeset
|
1703 #define DW_NOHPRINT 0 |
0656c716dc9f
Added a few convenience paramater macros to match some code I added in godwindows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1861
diff
changeset
|
1704 #define DW_NOHPIXMAP 0 |
0656c716dc9f
Added a few convenience paramater macros to match some code I added in godwindows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1861
diff
changeset
|
1705 #define DW_NOHICN 0 |
0656c716dc9f
Added a few convenience paramater macros to match some code I added in godwindows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1861
diff
changeset
|
1706 |
1190
76262040ed5f
Added DW_PERCENT_INDETERMINATE which can be passed to dw_percent_set_pos() to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1182
diff
changeset
|
1707 #define DW_PERCENT_INDETERMINATE ((unsigned int)-1) |
76262040ed5f
Added DW_PERCENT_INDETERMINATE which can be passed to dw_percent_set_pos() to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1182
diff
changeset
|
1708 |
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
|
1709 /* 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
|
1710 #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
|
1711 #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
|
1712 #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
|
1713 #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
|
1714 #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
|
1715 #define DW_ERROR_INTERRUPT 5 |
984
57cb9edb8944
Added a template skeleton file for porting DW to other platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
977
diff
changeset
|
1716 #define DW_ERROR_UNKNOWN -1 |
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
|
1717 |
584
420c6c94abc7
Added dw_html_* functionality for embedding HTML pages in Dynamic Windows
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
571
diff
changeset
|
1718 /* Embedded HTML actions */ |
643
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1719 #define DW_HTML_GOBACK 0 |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1720 #define DW_HTML_GOFORWARD 1 |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1721 #define DW_HTML_GOHOME 2 |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1722 #define DW_HTML_SEARCH 3 |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1723 #define DW_HTML_RELOAD 4 |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1724 #define DW_HTML_STOP 5 |
9ab89d89e6b4
Add dw_listview_insert()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
637
diff
changeset
|
1725 #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
|
1726 |
2006
6f1adc77de02
GTK: Added DW_SIGNAL_HTML_CHANGED and DW_SIGNAL_HTML_RESULT.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2005
diff
changeset
|
1727 /* Embedded HTML notifcations */ |
6f1adc77de02
GTK: Added DW_SIGNAL_HTML_CHANGED and DW_SIGNAL_HTML_RESULT.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2005
diff
changeset
|
1728 #define DW_HTML_CHANGE_STARTED 1 |
6f1adc77de02
GTK: Added DW_SIGNAL_HTML_CHANGED and DW_SIGNAL_HTML_RESULT.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2005
diff
changeset
|
1729 #define DW_HTML_CHANGE_REDIRECT 2 |
6f1adc77de02
GTK: Added DW_SIGNAL_HTML_CHANGED and DW_SIGNAL_HTML_RESULT.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2005
diff
changeset
|
1730 #define DW_HTML_CHANGE_LOADING 3 |
6f1adc77de02
GTK: Added DW_SIGNAL_HTML_CHANGED and DW_SIGNAL_HTML_RESULT.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2005
diff
changeset
|
1731 #define DW_HTML_CHANGE_COMPLETE 4 |
6f1adc77de02
GTK: Added DW_SIGNAL_HTML_CHANGED and DW_SIGNAL_HTML_RESULT.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2005
diff
changeset
|
1732 |
1523
026c0b4d6ee9
Initial implmentation of DW_DRAW_NOAA on Mac... only works on pixmaps right now.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1483
diff
changeset
|
1733 /* Drawing flags */ |
1269
9e477efbacca
Added DW_DRAW_DEFAULT, DW_DRAW_FILL and DW_DRAW_FULL drawing flags.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1261
diff
changeset
|
1734 #define DW_DRAW_DEFAULT 0 |
9e477efbacca
Added DW_DRAW_DEFAULT, DW_DRAW_FILL and DW_DRAW_FULL drawing flags.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1261
diff
changeset
|
1735 #define DW_DRAW_FILL 1 |
9e477efbacca
Added DW_DRAW_DEFAULT, DW_DRAW_FILL and DW_DRAW_FULL drawing flags.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1261
diff
changeset
|
1736 #define DW_DRAW_FULL (1 << 1) |
1523
026c0b4d6ee9
Initial implmentation of DW_DRAW_NOAA on Mac... only works on pixmaps right now.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1483
diff
changeset
|
1737 #define DW_DRAW_NOAA (1 << 2) |
1269
9e477efbacca
Added DW_DRAW_DEFAULT, DW_DRAW_FILL and DW_DRAW_FULL drawing flags.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1261
diff
changeset
|
1738 |
1924
c47a04d83b90
Added dw_mle_set_auto_complete() to enable MLE auto completion on supported platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1897
diff
changeset
|
1739 /* MLE Completion flags */ |
c47a04d83b90
Added dw_mle_set_auto_complete() to enable MLE auto completion on supported platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1897
diff
changeset
|
1740 #define DW_MLE_COMPLETE_TEXT 1 |
c47a04d83b90
Added dw_mle_set_auto_complete() to enable MLE auto completion on supported platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1897
diff
changeset
|
1741 #define DW_MLE_COMPLETE_DASH (1 << 1) |
c47a04d83b90
Added dw_mle_set_auto_complete() to enable MLE auto completion on supported platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1897
diff
changeset
|
1742 #define DW_MLE_COMPLETE_QUOTE (1 << 2) |
c47a04d83b90
Added dw_mle_set_auto_complete() to enable MLE auto completion on supported platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1897
diff
changeset
|
1743 |
2090
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1744 /* Library feature constants */ |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1745 #define DW_FEATURE_UNSUPPORTED -1 |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1746 #define DW_FEATURE_DISABLED 0 |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1747 #define DW_FEATURE_ENABLED 1 |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1748 |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1749 typedef enum |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1750 { |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1751 DW_FEATURE_HTML = 0, /* Supports the HTML Widget */ |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1752 DW_FEATURE_HTML_RESULT, /* Supports the DW_SIGNAL_HTML_RESULT callback */ |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1753 DW_FEATURE_WINDOW_BORDER, /* Supports custom window border sizes */ |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1754 DW_FEATURE_WINDOW_TRANSPARENCY, /* Supports window frame transparency */ |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1755 DW_FEATURE_DARK_MODE, /* Supports Dark Mode user interface */ |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1756 DW_FEATURE_MLE_AUTO_COMPLETE, /* Supports auto completion in Multi-line Edit boxes */ |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1757 DW_FEATURE_MLE_WORD_WRAP, /* Supports word wrapping in Multi-line Edit boxes */ |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1758 DW_FEATURE_CONTAINER_STRIPE, /* Supports striped line display in container widgets */ |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1759 DW_FEATURE_MDI, /* Supports Multiple Document Interface window frame */ |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1760 DW_FEATURE_NOTEBOOK_STATUS_TEXT, /* Supports status text area on notebook/tabbed controls */ |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1761 DW_FEATURE_NOTIFICATION, /* Supports sending system notifications */ |
2127
663467f6eee4
Code cleanup: Add constants to header for dark mode, buffer sizes and Unicode support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2114
diff
changeset
|
1762 DW_FEATURE_UTF8_UNICODE, /* Supports UTF8 encoded Unicode text */ |
2236
e7060d262939
Win: Switched to using Rich Edit MLE by default on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2226
diff
changeset
|
1763 DW_FEATURE_MLE_RICH_EDIT, /* Supports Rich Edit based MLE control (Windows) */ |
2284
3361ce6070ce
Add DW_FEATURE_TASK_BAR to the feature tests, for taskbar icon support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2283
diff
changeset
|
1764 DW_FEATURE_TASK_BAR, /* Supports icons in the taskbar or similar system widget */ |
2410
0286ac44d347
Add DW_FEATURE_TREE feature test, since iOS does not suppor tree.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2398
diff
changeset
|
1765 DW_FEATURE_TREE, /* Supports the Tree Widget */ |
2090
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1766 DW_FEATURE_MAX |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1767 } DWFEATURE; |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
1768 |
987
297f2e790e57
Added a DW_RESOURCE() macro for typecasting parameters to HICN and for doing bounds checking.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
986
diff
changeset
|
1769 /* Macro for casting resource IDs to HICN */ |
297f2e790e57
Added a DW_RESOURCE() macro for typecasting parameters to HICN and for doing bounds checking.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
986
diff
changeset
|
1770 #define DW_RESOURCE(a) (a < 65536 ? (HICN)a : (HICN)0) |
297f2e790e57
Added a DW_RESOURCE() macro for typecasting parameters to HICN and for doing bounds checking.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
986
diff
changeset
|
1771 |
1102
cfe7d2b6bc16
Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1077
diff
changeset
|
1772 #include <limits.h> |
cfe7d2b6bc16
Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1077
diff
changeset
|
1773 /* Macros for converting from INT/UINT to and from POINTER without compiler warnings */ |
2171
6533fc42c951
Fix building on Windows 2000 and changes to avoid CRT warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2166
diff
changeset
|
1774 #if _MSC_VER > 1500 || __GNUC_PREREQ(3, 1) || defined(__clang__) |
1841
7677754a1ca5
Ok, slight changes to prevent missing stdint.h with
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1840
diff
changeset
|
1775 #include <stdint.h> |
1839
22225eb286e5
Fixes for building with MINGW64 (specifically http://tdm-gcc.tdragon.net/).
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1802
diff
changeset
|
1776 /* There has got to be a better way to check for the intptr_t type.... |
22225eb286e5
Fixes for building with MINGW64 (specifically http://tdm-gcc.tdragon.net/).
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1802
diff
changeset
|
1777 * for now just include valid versions of Visual C and GCC plus clang. |
22225eb286e5
Fixes for building with MINGW64 (specifically http://tdm-gcc.tdragon.net/).
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1802
diff
changeset
|
1778 */ |
22225eb286e5
Fixes for building with MINGW64 (specifically http://tdm-gcc.tdragon.net/).
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1802
diff
changeset
|
1779 #define DW_INT_TO_POINTER(a) ((void *)(intptr_t)a) |
22225eb286e5
Fixes for building with MINGW64 (specifically http://tdm-gcc.tdragon.net/).
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1802
diff
changeset
|
1780 #define DW_POINTER_TO_INT(a) ((int)(intptr_t)a) |
22225eb286e5
Fixes for building with MINGW64 (specifically http://tdm-gcc.tdragon.net/).
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1802
diff
changeset
|
1781 #define DW_UINT_TO_POINTER(a) ((void *)(uintptr_t)a) |
22225eb286e5
Fixes for building with MINGW64 (specifically http://tdm-gcc.tdragon.net/).
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1802
diff
changeset
|
1782 #define DW_POINTER_TO_UINT(a) ((unsigned int)(uintptr_t)a) |
2132
42f8ad7a89e8
Added DW_POINTER_TO_(U)LONGLONG and DW_(U)LONGLONG_TO_POINTER macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2127
diff
changeset
|
1783 #define DW_LONGLONG_TO_POINTER(a) ((void *)(intptr_t)a) |
42f8ad7a89e8
Added DW_POINTER_TO_(U)LONGLONG and DW_(U)LONGLONG_TO_POINTER macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2127
diff
changeset
|
1784 #define DW_POINTER_TO_LONGLONG(a) ((long long)(intptr_t)a) |
42f8ad7a89e8
Added DW_POINTER_TO_(U)LONGLONG and DW_(U)LONGLONG_TO_POINTER macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2127
diff
changeset
|
1785 #define DW_ULONGLONG_TO_POINTER(a) ((void *)(uintptr_t)a) |
42f8ad7a89e8
Added DW_POINTER_TO_(U)LONGLONG and DW_(U)LONGLONG_TO_POINTER macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2127
diff
changeset
|
1786 #define DW_POINTER_TO_ULONGLONG(a) ((unsigned long long)(uintptr_t)a) |
1839
22225eb286e5
Fixes for building with MINGW64 (specifically http://tdm-gcc.tdragon.net/).
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1802
diff
changeset
|
1787 #elif ULONG_MAX > UINT_MAX |
22225eb286e5
Fixes for building with MINGW64 (specifically http://tdm-gcc.tdragon.net/).
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1802
diff
changeset
|
1788 /* If no intptr_t... ULONG is often bigger than UINT */ |
1102
cfe7d2b6bc16
Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1077
diff
changeset
|
1789 #define DW_INT_TO_POINTER(a) ((void *)(long)a) |
cfe7d2b6bc16
Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1077
diff
changeset
|
1790 #define DW_POINTER_TO_INT(a) ((int)(long)a) |
cfe7d2b6bc16
Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1077
diff
changeset
|
1791 #define DW_UINT_TO_POINTER(a) ((void *)(unsigned long)a) |
cfe7d2b6bc16
Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1077
diff
changeset
|
1792 #define DW_POINTER_TO_UINT(a) ((unsigned int)(unsigned long)a) |
cfe7d2b6bc16
Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1077
diff
changeset
|
1793 #else |
1839
22225eb286e5
Fixes for building with MINGW64 (specifically http://tdm-gcc.tdragon.net/).
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1802
diff
changeset
|
1794 /* Otherwise just fall back to standard casts */ |
1102
cfe7d2b6bc16
Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1077
diff
changeset
|
1795 #define DW_INT_TO_POINTER(a) ((void *)a) |
cfe7d2b6bc16
Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1077
diff
changeset
|
1796 #define DW_POINTER_TO_INT(a) ((int)a) |
cfe7d2b6bc16
Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1077
diff
changeset
|
1797 #define DW_UINT_TO_POINTER(a) ((void *)a) |
cfe7d2b6bc16
Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1077
diff
changeset
|
1798 #define DW_POINTER_TO_UINT(a) ((unsigned int)a) |
cfe7d2b6bc16
Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1077
diff
changeset
|
1799 #endif |
2132
42f8ad7a89e8
Added DW_POINTER_TO_(U)LONGLONG and DW_(U)LONGLONG_TO_POINTER macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2127
diff
changeset
|
1800 #ifndef DW_LONGLONG_TO_POINTER |
42f8ad7a89e8
Added DW_POINTER_TO_(U)LONGLONG and DW_(U)LONGLONG_TO_POINTER macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2127
diff
changeset
|
1801 #define DW_LONGLONG_TO_POINTER(a) ((void *)a) |
42f8ad7a89e8
Added DW_POINTER_TO_(U)LONGLONG and DW_(U)LONGLONG_TO_POINTER macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2127
diff
changeset
|
1802 #define DW_POINTER_TO_LONGLONG(a) ((long long)a) |
42f8ad7a89e8
Added DW_POINTER_TO_(U)LONGLONG and DW_(U)LONGLONG_TO_POINTER macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2127
diff
changeset
|
1803 #define DW_ULONGLONG_TO_POINTER(a) ((void *)a) |
42f8ad7a89e8
Added DW_POINTER_TO_(U)LONGLONG and DW_(U)LONGLONG_TO_POINTER macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2127
diff
changeset
|
1804 #define DW_POINTER_TO_ULONGLONG(a) ((unsigned long long)a) |
42f8ad7a89e8
Added DW_POINTER_TO_(U)LONGLONG and DW_(U)LONGLONG_TO_POINTER macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2127
diff
changeset
|
1805 #endif |
1658
6fe1e91da477
Added DW_POINTER() macro for casting parameters to (void *)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1616
diff
changeset
|
1806 #define DW_POINTER(a) ((void *)a) |
1102
cfe7d2b6bc16
Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1077
diff
changeset
|
1807 |
1535
2913bb58f439
Added DW_FCF_COMPOSITED frame creation flag, used only on Windows currently...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1528
diff
changeset
|
1808 #ifndef DW_FCF_COMPOSITED |
2913bb58f439
Added DW_FCF_COMPOSITED frame creation flag, used only on Windows currently...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1528
diff
changeset
|
1809 #define DW_FCF_COMPOSITED 0 |
2913bb58f439
Added DW_FCF_COMPOSITED frame creation flag, used only on Windows currently...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1528
diff
changeset
|
1810 #endif |
2913bb58f439
Added DW_FCF_COMPOSITED frame creation flag, used only on Windows currently...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1528
diff
changeset
|
1811 |
2451
44b77654c406
Add DW_DIR_SEPARATOR for easy access to the separator characters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2410
diff
changeset
|
1812 #ifndef DW_DIR_SEPARATOR |
44b77654c406
Add DW_DIR_SEPARATOR for easy access to the separator characters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2410
diff
changeset
|
1813 #define DW_DIR_SEPARATOR '/' |
44b77654c406
Add DW_DIR_SEPARATOR for easy access to the separator characters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2410
diff
changeset
|
1814 #endif |
44b77654c406
Add DW_DIR_SEPARATOR for easy access to the separator characters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2410
diff
changeset
|
1815 |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1816 #ifndef API |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1817 #define API |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1818 #endif |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1819 |
1858
952a41463240
Make sure callbacks have their calling convention specified explicitly on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1853
diff
changeset
|
1820 #ifndef DWSIGNAL |
175
d78d08440246
Use _System/_stdcall for callbacks.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
174
diff
changeset
|
1821 #define DWSIGNAL API |
1858
952a41463240
Make sure callbacks have their calling convention specified explicitly on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1853
diff
changeset
|
1822 #endif |
175
d78d08440246
Use _System/_stdcall for callbacks.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
174
diff
changeset
|
1823 |
1541
1c6593b0ce45
Initial scrolled minimum and maximum code on Windows... MLE implemented, container to go.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1535
diff
changeset
|
1824 /* Constants for sizing scrolled widgets */ |
1c6593b0ce45
Initial scrolled minimum and maximum code on Windows... MLE implemented, container to go.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1535
diff
changeset
|
1825 #define _DW_SCROLLED_MIN_WIDTH 100 |
1c6593b0ce45
Initial scrolled minimum and maximum code on Windows... MLE implemented, container to go.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1535
diff
changeset
|
1826 #define _DW_SCROLLED_MIN_HEIGHT 75 |
1c6593b0ce45
Initial scrolled minimum and maximum code on Windows... MLE implemented, container to go.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1535
diff
changeset
|
1827 #define _DW_SCROLLED_MAX_WIDTH 500 |
1c6593b0ce45
Initial scrolled minimum and maximum code on Windows... MLE implemented, container to go.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1535
diff
changeset
|
1828 #define _DW_SCROLLED_MAX_HEIGHT 400 |
1c6593b0ce45
Initial scrolled minimum and maximum code on Windows... MLE implemented, container to go.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1535
diff
changeset
|
1829 |
1783
9de6d1cc8fb8
Put test program code into DEPRECATED #ifdef again to avoid build warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1769
diff
changeset
|
1830 #include <wchar.h> |
9de6d1cc8fb8
Put test program code into DEPRECATED #ifdef again to avoid build warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1769
diff
changeset
|
1831 |
492
9354c460d76b
Added some type declarations to allow better interoperability with Regina
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
487
diff
changeset
|
1832 /* 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
|
1833 * 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
|
1834 */ |
9354c460d76b
Added some type declarations to allow better interoperability with Regina
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
487
diff
changeset
|
1835 #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
|
1836 #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
|
1837 #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
|
1838 #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
|
1839 #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
|
1840 #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
|
1841 #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
|
1842 #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
|
1843 #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
|
1844 #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
|
1845 |
2070
370baf78abdc
Mac: Added dw_app_id_set() and updates to generate the APP ID automatically.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2069
diff
changeset
|
1846 /* Use the dbsoft.org application domain by default if not specified */ |
370baf78abdc
Mac: Added dw_app_id_set() and updates to generate the APP ID automatically.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2069
diff
changeset
|
1847 #define DW_APP_DOMAIN_DEFAULT "org.dbsoft.dwindows" |
370baf78abdc
Mac: Added dw_app_id_set() and updates to generate the APP ID automatically.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2069
diff
changeset
|
1848 |
2283
0c88059df8e9
Add forwarder macros to the new names of the "query" functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2271
diff
changeset
|
1849 /* Forwarder macros to the future names of these functions */ |
0c88059df8e9
Add forwarder macros to the new names of the "query" functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2271
diff
changeset
|
1850 #define dw_pointer_get_pos(a, b) dw_pointer_query_pos(a, b) |
0c88059df8e9
Add forwarder macros to the new names of the "query" functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2271
diff
changeset
|
1851 #define dw_environment_get(a) dw_environment_query(a) |
0c88059df8e9
Add forwarder macros to the new names of the "query" functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2271
diff
changeset
|
1852 #define dw_container_get_start(a, b) dw_container_query_start(a, b) |
0c88059df8e9
Add forwarder macros to the new names of the "query" functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2271
diff
changeset
|
1853 #define dw_container_get_next(a, b) dw_container_query_next(a, b) |
0c88059df8e9
Add forwarder macros to the new names of the "query" functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2271
diff
changeset
|
1854 |
2396
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1855 /* Entrypoint handling macros */ |
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1856 #ifdef __IOS__ |
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1857 #define dwmain(a, b) \ |
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1858 _dwmain(a, b); \ |
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1859 void _dw_main_thread(int argc, char **argv); \ |
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1860 void _dw_main_launch(void **); \ |
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1861 int main(a, b) { \ |
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1862 void **data = calloc(sizeof(void *), 3); \ |
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1863 data[0] = DW_POINTER(_dwmain); \ |
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1864 data[1] = DW_INT_TO_POINTER(argc); \ |
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1865 data[2] = DW_POINTER(argv); \ |
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1866 dw_thread_new(_dw_main_launch, data, 0); \ |
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1867 _dw_main_thread(argc, argv); } \ |
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1868 int _dwmain(a, b) |
2398
4de830d3bf9e
Win: Remove winmain.c as it is unnecessary when using the dwmain() entrypoint macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2396
diff
changeset
|
1869 #elif defined(__WIN32__) |
4de830d3bf9e
Win: Remove winmain.c as it is unnecessary when using the dwmain() entrypoint macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2396
diff
changeset
|
1870 #define dwmain(a, b) \ |
4de830d3bf9e
Win: Remove winmain.c as it is unnecessary when using the dwmain() entrypoint macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2396
diff
changeset
|
1871 _dwmain(a, b); \ |
4de830d3bf9e
Win: Remove winmain.c as it is unnecessary when using the dwmain() entrypoint macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2396
diff
changeset
|
1872 char ** API _dw_convertargs(int *count, char *start, HINSTANCE hInstance); \ |
4de830d3bf9e
Win: Remove winmain.c as it is unnecessary when using the dwmain() entrypoint macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2396
diff
changeset
|
1873 int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) {\ |
4de830d3bf9e
Win: Remove winmain.c as it is unnecessary when using the dwmain() entrypoint macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2396
diff
changeset
|
1874 int argc; \ |
4de830d3bf9e
Win: Remove winmain.c as it is unnecessary when using the dwmain() entrypoint macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2396
diff
changeset
|
1875 char **argv = _dw_convertargs(&argc, lpCmdLine, hInstance); \ |
4de830d3bf9e
Win: Remove winmain.c as it is unnecessary when using the dwmain() entrypoint macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2396
diff
changeset
|
1876 return _dwmain(argc, argv); } \ |
4de830d3bf9e
Win: Remove winmain.c as it is unnecessary when using the dwmain() entrypoint macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2396
diff
changeset
|
1877 int _dwmain(a, b) |
2474
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
1878 #elif defined(__ANDROID__) |
a13e6db064f4
Android: Implement thread, semaphore, shared memory API functions.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2473
diff
changeset
|
1879 int dwmain(int argc, char *argv[]); |
2396
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1880 #else |
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1881 #define dwmain(a, b) main(a, b) |
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1882 #endif |
5bb3491ceba2
iOS: Get iOS basic funcionality working by creating dwmain() macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2376
diff
changeset
|
1883 |
3 | 1884 /* Public function prototypes */ |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1885 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
|
1886 void API dw_box_pack_end(HWND box, HWND item, int width, int height, int hsize, int vsize, int pad); |
1077
34f1d6f5f1c3
Added function dw_box_pack_at_index() on Windows, Mac and OS/2. And an example usage in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1075
diff
changeset
|
1887 void API dw_box_pack_at_index(HWND box, HWND item, int index, int width, int height, int hsize, int vsize, int pad); |
1769
d81bebc5c8cc
Mark and I decided to change dw_box_remove*() to dw_box_unpack*() for consistency.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1768
diff
changeset
|
1888 HWND API dw_box_unpack_at_index(HWND box, int index); |
d81bebc5c8cc
Mark and I decided to change dw_box_remove*() to dw_box_unpack*() for consistency.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1768
diff
changeset
|
1889 int API dw_box_unpack(HWND handle); |
2205
a43a3f80ed32
GTK: Changes to include both dw_(int_)init() functions with deprecated.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2204
diff
changeset
|
1890 int API dw_init(int newthread, int argc, char *argv[]); |
2202
c677d728e143
GTK3: Switch to using GResource for compiled in image resources.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2171
diff
changeset
|
1891 #ifdef DW_INCLUDE_DEPRECATED_RESOURCES |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1892 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
|
1893 #define dw_init(a, b, c) dw_int_init(&_resources, a, &b, &c) |
3 | 1894 #endif |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1895 void API dw_main(void); |
1528
5facb5380944
Added dw_main_quit() function for exiting the dw_main() loop.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1523
diff
changeset
|
1896 void API dw_main_quit(void); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1897 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
|
1898 void API dw_main_iteration(void); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1899 void API dw_free(void *ptr); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1900 int API dw_window_show(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1901 int API dw_window_hide(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1902 int API dw_window_minimize(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1903 int API dw_window_raise(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1904 int API dw_window_lower(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1905 int API dw_window_destroy(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1906 void API dw_window_redraw(HWND handle); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
1907 int API dw_window_set_font(HWND handle, const char *fontname); |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1908 char * API dw_window_get_font(HWND handle); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1909 int API dw_window_set_color(HWND handle, unsigned long fore, unsigned long back); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
1910 HWND API dw_window_new(HWND hwndOwner, const char *title, unsigned long flStyle); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1911 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
|
1912 HWND API dw_scrollbox_new(int type, int pad); |
731
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1913 int API dw_scrollbox_get_pos( HWND handle, int orient ); |
6a589a1a42b0
Add dw_window_get_font()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
724
diff
changeset
|
1914 int API dw_scrollbox_get_range( HWND handle, int orient ); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
1915 HWND API dw_groupbox_new(int type, int pad, const char *title); |
1598
a2cd4b78048f
Added initial API deprecation support for clang, GCC and Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1595
diff
changeset
|
1916 DW_DEPRECATED(HWND API dw_mdi_new(unsigned long id), "Due to lack of full Mac support consider avoiding this function."); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1917 HWND API dw_bitmap_new(unsigned long id); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
1918 HWND API dw_bitmapbutton_new(const char *text, unsigned long id); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
1919 HWND API dw_bitmapbutton_new_from_file(const char *text, unsigned long id, const char *filename); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
1920 HWND API dw_bitmapbutton_new_from_data(const char *text, unsigned long id, const 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
|
1921 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
|
1922 HWND API dw_tree_new(unsigned long id); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
1923 HWND API dw_text_new(const char *text, unsigned long id); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
1924 HWND API dw_status_text_new(const char *text, unsigned long id); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1925 HWND API dw_mle_new(unsigned long id); |
2036
48b91f535f82
GTK: More const changes... a few more commits to finish.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2035
diff
changeset
|
1926 HWND API dw_entryfield_new(const char *text, unsigned long id); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
1927 HWND API dw_entryfield_password_new(const char *text, ULONG id); |
2036
48b91f535f82
GTK: More const changes... a few more commits to finish.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2035
diff
changeset
|
1928 HWND API dw_combobox_new(const char *text, unsigned long id); |
48b91f535f82
GTK: More const changes... a few more commits to finish.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2035
diff
changeset
|
1929 HWND API dw_button_new(const char *text, unsigned long id); |
48b91f535f82
GTK: More const changes... a few more commits to finish.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2035
diff
changeset
|
1930 HWND API dw_spinbutton_new(const char *text, unsigned long id); |
48b91f535f82
GTK: More const changes... a few more commits to finish.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2035
diff
changeset
|
1931 HWND API dw_radiobutton_new(const char *text, ULONG id); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1932 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
|
1933 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
|
1934 HWND API dw_scrollbar_new(int vertical, ULONG id); |
2036
48b91f535f82
GTK: More const changes... a few more commits to finish.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2035
diff
changeset
|
1935 HWND API dw_checkbox_new(const char *text, unsigned long id); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1936 HWND API dw_listbox_new(unsigned long id, int multi); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
1937 void API dw_listbox_append(HWND handle, const char *text); |
2036
48b91f535f82
GTK: More const changes... a few more commits to finish.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2035
diff
changeset
|
1938 void API dw_listbox_insert(HWND handle, const char *text, int pos); |
571
828e6a66c5c5
Add dw_listbox_list_append()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
567
diff
changeset
|
1939 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
|
1940 void API dw_listbox_clear(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1941 int API dw_listbox_count(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1942 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
|
1943 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
|
1944 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
|
1945 void API dw_listbox_get_text(HWND handle, unsigned int index, char *buffer, unsigned int length); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
1946 void API dw_listbox_set_text(HWND handle, unsigned int index, const char *buffer); |
986
87dc0f5f96d0
Fix return type of dw_listbox_selected() to be "int" instead of "unsigned int" to allow -1 return.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
984
diff
changeset
|
1947 int API dw_listbox_selected(HWND handle); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1948 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
|
1949 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
|
1950 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
|
1951 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
|
1952 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
|
1953 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
|
1954 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
|
1955 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
|
1956 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
|
1957 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
|
1958 void API dw_window_get_pos_size(HWND handle, long *x, long *y, unsigned long *width, unsigned long *height); |
1430
cfc7af97c295
Added dw_window_set_preferred_size() prototype to the header.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1415
diff
changeset
|
1959 void API dw_window_get_preferred_size(HWND handle, int *width, int *height); |
1468
b2235efd9914
Rewrite of window position code for GTK2. DW_BORDER_WIDTH and DW_BORDER_HEIGHT
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1437
diff
changeset
|
1960 void API dw_window_set_gravity(HWND handle, int horz, int vert); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1961 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
|
1962 void API dw_window_set_icon(HWND handle, HICN icon); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
1963 void API dw_window_set_bitmap(HWND handle, unsigned long id, const char *filename); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
1964 void API dw_window_set_bitmap_from_data(HWND handle, unsigned long id, const char *data, int len); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1965 char * API dw_window_get_text(HWND handle); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
1966 void API dw_window_set_text(HWND handle, const char *text); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
1967 void API dw_window_set_tooltip(HWND handle, const char *bubbletext); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1968 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
|
1969 void API dw_window_disable(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1970 void API dw_window_enable(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1971 void API dw_window_capture(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1972 void API dw_window_release(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1973 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
|
1974 void API dw_window_set_pointer(HWND handle, int pointertype); |
1795
9304241b7b33
Added new dw_window_set_focus() function and attempted to fix...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1790
diff
changeset
|
1975 void API dw_window_set_focus(HWND handle); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1976 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
|
1977 void API dw_window_click_default(HWND window, HWND next); |
2036
48b91f535f82
GTK: More const changes... a few more commits to finish.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2035
diff
changeset
|
1978 unsigned int API dw_mle_import(HWND handle, const char *buffer, int startpoint); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1979 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
|
1980 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
|
1981 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
|
1982 void API dw_mle_clear(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1983 void API dw_mle_freeze(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1984 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
|
1985 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
|
1986 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
|
1987 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
|
1988 void API dw_mle_set_word_wrap(HWND handle, int state); |
1924
c47a04d83b90
Added dw_mle_set_auto_complete() to enable MLE auto completion on supported platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1897
diff
changeset
|
1989 void API dw_mle_set_auto_complete(HWND handle, int state); |
2036
48b91f535f82
GTK: More const changes... a few more commits to finish.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2035
diff
changeset
|
1990 int API dw_mle_search(HWND handle, const char *text, int point, unsigned long flags); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
1991 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
|
1992 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
|
1993 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
|
1994 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
|
1995 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
|
1996 void API dw_checkbox_set(HWND handle, int value); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
1997 HTREEITEM API dw_tree_insert(HWND handle, const char *title, HICN icon, HTREEITEM parent, void *itemdata); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
1998 HTREEITEM API dw_tree_insert_after(HWND handle, HTREEITEM item, const 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
|
1999 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
|
2000 void API dw_tree_item_delete(HWND handle, HTREEITEM item); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2001 void API dw_tree_item_change(HWND handle, HTREEITEM item, const 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
|
2002 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
|
2003 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
|
2004 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
|
2005 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
|
2006 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
|
2007 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
|
2008 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
|
2009 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
|
2010 HICN API dw_icon_load(unsigned long module, unsigned long id); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2011 HICN API dw_icon_load_from_file(const char *filename); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2012 HICN API dw_icon_load_from_data(const char *data, int len); |
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
|
2013 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
|
2014 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
|
2015 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
|
2016 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
|
2017 void API dw_container_set_column_width(HWND handle, int column, int width); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2018 void API dw_container_set_row_title(void *pointer, int row, const char *title); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2019 void API dw_container_change_row_title(HWND handle, int row, const char *title); |
1871
3f571ad9b92e
First Mac round of changes aimed at separating the data and text
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1863
diff
changeset
|
2020 void API dw_container_set_row_data(void *pointer, int row, void *data); |
3f571ad9b92e
First Mac round of changes aimed at separating the data and text
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1863
diff
changeset
|
2021 void API dw_container_change_row_data(HWND handle, int row, void *data); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2022 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
|
2023 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
|
2024 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
|
2025 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
|
2026 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
|
2027 void API dw_container_scroll(HWND handle, int direction, long rows); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2028 void API dw_container_cursor(HWND handle, const char *text); |
1871
3f571ad9b92e
First Mac round of changes aimed at separating the data and text
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1863
diff
changeset
|
2029 void API dw_container_cursor_by_data(HWND handle, void *data); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2030 void API dw_container_delete_row(HWND handle, const char *text); |
1871
3f571ad9b92e
First Mac round of changes aimed at separating the data and text
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1863
diff
changeset
|
2031 void API dw_container_delete_row_by_data(HWND handle, void *data); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2032 void API dw_container_optimize(HWND handle); |
1291
b99b0b2c2826
Renamed dw_container_set_row_bg() to dw_container_set_stripe().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1269
diff
changeset
|
2033 void API dw_container_set_stripe(HWND handle, unsigned long oddcolor, unsigned long evencolor); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2034 void API dw_filesystem_set_column_title(HWND handle, const char *title); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2035 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
|
2036 void API dw_filesystem_set_item(HWND handle, void *pointer, int column, int row, void *data); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2037 void API dw_filesystem_set_file(HWND handle, void *pointer, int row, const 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
|
2038 void API dw_filesystem_change_item(HWND handle, int column, int row, void *data); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2039 void API dw_filesystem_change_file(HWND handle, int row, const 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
|
2040 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
|
2041 int API dw_filesystem_get_column_type(HWND handle, int column); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2042 void API dw_taskbar_insert(HWND handle, HICN icon, const char *bubbletext); |
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
|
2043 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
|
2044 int API dw_screen_width(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2045 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
|
2046 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
|
2047 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
|
2048 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
|
2049 void API dw_notebook_page_destroy(HWND handle, unsigned int pageid); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2050 void API dw_notebook_page_set_text(HWND handle, unsigned long pageid, const char *text); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2051 void API dw_notebook_page_set_status_text(HWND handle, unsigned long pageid, const char *text); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2052 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
|
2053 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
|
2054 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
|
2055 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
|
2056 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
|
2057 float API dw_splitbar_get(HWND handle); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2058 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
|
2059 HMENUI API dw_menubar_new(HWND location); |
2036
48b91f535f82
GTK: More const changes... a few more commits to finish.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2035
diff
changeset
|
2060 HWND API dw_menu_append_item(HMENUI menu, const char *title, unsigned long id, unsigned long flags, int end, int check, HMENUI submenu); |
1371
896347a9be19
Initial versions of dw_menu_delete_item() on OS/2 and Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1350
diff
changeset
|
2061 int API dw_menu_delete_item(HMENUI menu, unsigned long id); |
1598
a2cd4b78048f
Added initial API deprecation support for clang, GCC and Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1595
diff
changeset
|
2062 DW_DEPRECATED(void API dw_menu_item_set_check(HMENUI menu, unsigned long id, int check), "Use dw_menu_item_set_state() for new code."); |
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
|
2063 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
|
2064 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
|
2065 void API dw_menu_destroy(HMENUI *menu); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2066 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
|
2067 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
|
2068 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
|
2069 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
|
2070 HMTX API dw_mutex_new(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2071 void API dw_mutex_close(HMTX mutex); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2072 void API dw_mutex_lock(HMTX mutex); |
1171
13d046d301f7
Added missing dw_mutex_trylock() prototype to header file.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1168
diff
changeset
|
2073 int API dw_mutex_trylock(HMTX mutex); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2074 void API dw_mutex_unlock(HMTX mutex); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2075 HEV API dw_event_new(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2076 int API dw_event_reset(HEV eve); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2077 int API dw_event_post(HEV eve); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2078 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
|
2079 int API dw_event_close (HEV *eve); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2080 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
|
2081 void API dw_thread_end(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2082 DWTID API dw_thread_id(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2083 void API dw_exit(int exitcode); |
1861
c836603d3f14
Add dw_shutdown() function which does the same thing as dw_exit() ...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1858
diff
changeset
|
2084 void API dw_shutdown(void); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2085 HWND API dw_render_new(unsigned long id); |
2355
fad0821cb953
Add new function dw_render_redraw() which will trigger expose event on render widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2284
diff
changeset
|
2086 void API dw_render_redraw(HWND handle); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2087 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
|
2088 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
|
2089 unsigned long API dw_color_choose(unsigned long value); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2090 char * API dw_font_choose(const char *currfont); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2091 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
|
2092 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
|
2093 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
|
2094 void API dw_draw_polygon(HWND handle, HPIXMAP pixmap, int fill, int npoints, int *x, int *y); |
1261
61d0c5f84644
Initial attempt at adding dw_draw_arc() support on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1253
diff
changeset
|
2095 void API dw_draw_arc(HWND handle, HPIXMAP pixmap, int flags, int xorigin, int yorigin, int x1, int y1, int x2, int y2); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2096 void API dw_draw_text(HWND handle, HPIXMAP pixmap, int x, int y, const char *text); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2097 void API dw_font_text_extents_get(HWND handle, HPIXMAP pixmap, const char *text, int *width, int *height); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2098 void API dw_font_set_default(const char *fontname); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2099 void API dw_flush(void); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2100 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); |
1243
c191a562c14a
Added new dw_pixmap_stretch_bitblt() function on Windows and OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1212
diff
changeset
|
2101 int API dw_pixmap_stretch_bitblt(HWND dest, HPIXMAP destp, int xdest, int ydest, int width, int height, HWND src, HPIXMAP srcp, int xsrc, int ysrc, int srcwidth, int srcheight); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2102 HPIXMAP API dw_pixmap_new(HWND handle, unsigned long width, unsigned long height, int depth); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2103 HPIXMAP API dw_pixmap_new_from_file(HWND handle, const char *filename); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2104 HPIXMAP API dw_pixmap_new_from_data(HWND handle, const char *data, int len); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2105 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
|
2106 void API dw_pixmap_set_transparent_color( HPIXMAP pixmap, ULONG color ); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2107 int API dw_pixmap_set_font(HPIXMAP pixmap, const char *fontname); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2108 void API dw_pixmap_destroy(HPIXMAP pixmap); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2109 void API dw_beep(int freq, int dur); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2110 void API dw_debug(const char *format, ...); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2111 int API dw_messagebox(const char *title, int flags, const char *format, ...); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2112 void API dw_environment_query(DWEnv *env); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2113 int API dw_exec(const char *program, int type, char **params); |
2036
48b91f535f82
GTK: More const changes... a few more commits to finish.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2035
diff
changeset
|
2114 int API dw_browse(const char *url); |
2035
ea303d356419
Mac: Const changes to match the Windows changes.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2034
diff
changeset
|
2115 char * API dw_file_browse(const char *title, const char *defpath, const char *ext, int flags); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2116 char * API dw_user_dir(void); |
1384
156e32814c83
Cleanup of the previous commits and added Unix support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1371
diff
changeset
|
2117 char * API dw_app_dir(void); |
2105
10c22853b479
Add dw_app_id_set() dwtest call to set application name and ID for sending notifications.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2090
diff
changeset
|
2118 int API dw_app_id_set(const char *appid, const char *appname); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2119 DWDialog * API dw_dialog_new(void *data); |
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2120 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
|
2121 void * API dw_dialog_wait(DWDialog *dialog); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2122 void API dw_window_set_data(HWND window, const char *dataname, void *data); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2123 void * API dw_window_get_data(HWND window, const char *dataname); |
2036
48b91f535f82
GTK: More const changes... a few more commits to finish.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2035
diff
changeset
|
2124 int API dw_module_load(const char *name, HMOD *handle); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2125 int API dw_module_symbol(HMOD handle, const char *name, void**func); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2126 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
|
2127 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
|
2128 void API dw_timer_disconnect(int id); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2129 void API dw_signal_connect(HWND window, const char *signame, void *sigfunc, void *data); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2130 void API dw_signal_connect_data(HWND window, const char *signame, void *sigfunc, void *discfunc, void *data); |
174
75bf3051235f
Fixes so you can mix compilers.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
167
diff
changeset
|
2131 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
|
2132 void API dw_signal_disconnect_by_data(HWND window, void *data); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2133 void API dw_signal_disconnect_by_name(HWND window, const char *signame); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2134 HEV API dw_named_event_new(const char *name); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2135 HEV API dw_named_event_get(const char *name); |
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
|
2136 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
|
2137 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
|
2138 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
|
2139 int API dw_named_event_close(HEV eve); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2140 HSHM API dw_named_memory_new(void **dest, int size, const char *name); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2141 HSHM API dw_named_memory_get(void **dest, int size, const char *name); |
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
|
2142 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
|
2143 void API dw_html_action(HWND hwnd, int action); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2144 int API dw_html_raw(HWND hwnd, const char *string); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2145 int API dw_html_url(HWND hwnd, const char *url); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2146 int API dw_html_javascript_run(HWND hwnd, const char *script, void *scriptdata); |
584
420c6c94abc7
Added dw_html_* functionality for embedding HTML pages in Dynamic Windows
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
571
diff
changeset
|
2147 HWND API dw_html_new(unsigned long id); |
613
f7d318cffc3e
Fix compiler error
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
612
diff
changeset
|
2148 char * API dw_clipboard_get_text(void); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2149 void API dw_clipboard_set_text(const char *str, int len); |
596
a8ea3d68b9ec
Update version
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
584
diff
changeset
|
2150 HWND API dw_calendar_new(unsigned long id); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2151 void API dw_calendar_set_date(HWND window, unsigned int year, unsigned int month, unsigned int day); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2152 void API dw_calendar_get_date(HWND window, unsigned int *year, unsigned int *month, unsigned int *day); |
2036
48b91f535f82
GTK: More const changes... a few more commits to finish.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2035
diff
changeset
|
2153 HPRINT API dw_print_new(const char *jobname, unsigned long flags, unsigned int pages, void *drawfunc, void *drawdata); |
1136
1a5b0908659b
Initial implementation of the DynamicWindows Print object for GTK3.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1108
diff
changeset
|
2154 int API dw_print_run(HPRINT print, unsigned long flags); |
1a5b0908659b
Initial implementation of the DynamicWindows Print object for GTK3.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1108
diff
changeset
|
2155 void API dw_print_cancel(HPRINT print); |
2114
251d050d306b
Change dw_notification_new() to take an image path instead of an in-memory HPIXMAP.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2105
diff
changeset
|
2156 HWND API dw_notification_new(const char *title, const char *imagepath, const char *description, ...); |
2066
2c2530f8cbef
Initial design for system notification support on GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2036
diff
changeset
|
2157 int API dw_notification_send(HWND notification); |
2034
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2158 wchar_t * API dw_utf8_to_wchar(const char *utf8string); |
89d62197124b
Visual C in C++ mode complains about missing const declarations in paramaters.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2006
diff
changeset
|
2159 char * API dw_wchar_to_utf8(const wchar_t *wstring); |
2090
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
2160 int API dw_feature_get(DWFEATURE feature); |
cdb94c6fd611
Added initial implmentation of dw_feature_get/set() on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2083
diff
changeset
|
2161 int API dw_feature_set(DWFEATURE feature, int state); |
1887
09860ba329a4
Divided thread initialization and deinitialization into separate
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1871
diff
changeset
|
2162 /* Exported for language bindings */ |
09860ba329a4
Divided thread initialization and deinitialization into separate
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1871
diff
changeset
|
2163 void API _dw_init_thread(void); |
09860ba329a4
Divided thread initialization and deinitialization into separate
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1871
diff
changeset
|
2164 void API _dw_deinit_thread(void); |
3 | 2165 |
2000
77e43d71eaa7
Changes to allow mixing C and C++ when including dw.h.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1991
diff
changeset
|
2166 #ifdef __cplusplus |
77e43d71eaa7
Changes to allow mixing C and C++ when including dw.h.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1991
diff
changeset
|
2167 } |
3 | 2168 #endif |
2000
77e43d71eaa7
Changes to allow mixing C and C++ when including dw.h.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1991
diff
changeset
|
2169 |
77e43d71eaa7
Changes to allow mixing C and C++ when including dw.h.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1991
diff
changeset
|
2170 #endif |