Mercurial > dwindows
annotate dwtest.c @ 487:d6e07d292145
Implemented taskbar icons on windows, so I can keep feature for feature
with InJoy Firewall.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Sat, 08 Nov 2003 15:30:19 +0000 |
parents | 053211e0698b |
children | f3ed8dda02f8 |
rev | line source |
---|---|
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
1 #include <stdlib.h> |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
2 #include <string.h> |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
3 #include <stdio.h> |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
4 #include "dw.h" |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
5 |
219
79968cf0f3b3
Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
218
diff
changeset
|
6 /* Select a fixed width font for our platform */ |
79968cf0f3b3
Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
218
diff
changeset
|
7 #ifdef __OS2__ |
79968cf0f3b3
Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
218
diff
changeset
|
8 #define FIXEDFONT "5.System VIO" |
305
32ad8a0dc06b
Escape backslashes so icons under Windows and OS/2 can be found.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
304
diff
changeset
|
9 #define FOLDER_ICON_NAME "os2\\folder" |
32ad8a0dc06b
Escape backslashes so icons under Windows and OS/2 can be found.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
304
diff
changeset
|
10 #define FILE_ICON_NAME "os2\\file" |
219
79968cf0f3b3
Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
218
diff
changeset
|
11 #elif defined(__WIN32__) |
79968cf0f3b3
Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
218
diff
changeset
|
12 #define FIXEDFONT "10.Terminal" |
305
32ad8a0dc06b
Escape backslashes so icons under Windows and OS/2 can be found.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
304
diff
changeset
|
13 #define FOLDER_ICON_NAME "win\\folder" |
32ad8a0dc06b
Escape backslashes so icons under Windows and OS/2 can be found.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
304
diff
changeset
|
14 #define FILE_ICON_NAME "win\\file" |
219
79968cf0f3b3
Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
218
diff
changeset
|
15 #elif GTK_MAJOR_VERSION > 1 |
79968cf0f3b3
Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
218
diff
changeset
|
16 #define FIXEDFONT "monospace 10" |
297
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
17 #define FOLDER_ICON_NAME "gtk/folder" |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
18 #define FILE_ICON_NAME "gtk/file" |
219
79968cf0f3b3
Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
218
diff
changeset
|
19 #else |
79968cf0f3b3
Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
218
diff
changeset
|
20 #define FIXEDFONT "fixed" |
297
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
21 #define FOLDER_ICON_NAME "gtk/folder" |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
22 #define FILE_ICON_NAME "gtk/file" |
219
79968cf0f3b3
Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
218
diff
changeset
|
23 #endif |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
24 |
257
9ea4ac9a097f
Added dw_icon_load_from_file() on OS/2 and Windows. Added a stub on Unix
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
254
diff
changeset
|
25 #define SCROLLBARWIDTH 14 |
9ea4ac9a097f
Added dw_icon_load_from_file() on OS/2 and Windows. Added a stub on Unix
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
254
diff
changeset
|
26 |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
27 unsigned long flStyle = DW_FCF_SYSMENU | DW_FCF_TITLEBAR | |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
28 DW_FCF_SHELLPOSITION | DW_FCF_TASKLIST | DW_FCF_DLGBORDER; |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
29 |
437
903fb3085d42
More MacOS fixes, make install now works properly. Made special test
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
398
diff
changeset
|
30 #ifdef __MAC__ |
903fb3085d42
More MacOS fixes, make install now works properly. Made special test
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
398
diff
changeset
|
31 int main(int argc, char *argv[]) |
903fb3085d42
More MacOS fixes, make install now works properly. Made special test
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
398
diff
changeset
|
32 { |
903fb3085d42
More MacOS fixes, make install now works properly. Made special test
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
398
diff
changeset
|
33 DWEnv env; |
443
e99cd6e45c0b
Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
437
diff
changeset
|
34 HWND window; |
e99cd6e45c0b
Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
437
diff
changeset
|
35 |
e99cd6e45c0b
Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
437
diff
changeset
|
36 dw_init(TRUE, argc, argv); |
e99cd6e45c0b
Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
437
diff
changeset
|
37 |
e99cd6e45c0b
Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
437
diff
changeset
|
38 window = dw_window_new(HWND_DESKTOP, "Test Window", flStyle); |
e99cd6e45c0b
Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
437
diff
changeset
|
39 dw_window_set_pos_size(window, 100, 100, 300, 200); |
e99cd6e45c0b
Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
437
diff
changeset
|
40 dw_window_show(window); |
437
903fb3085d42
More MacOS fixes, make install now works properly. Made special test
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
398
diff
changeset
|
41 |
903fb3085d42
More MacOS fixes, make install now works properly. Made special test
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
398
diff
changeset
|
42 dw_environment_query(&env); |
443
e99cd6e45c0b
Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
437
diff
changeset
|
43 dw_messagebox("Title", DW_MB_OK | DW_MB_INFORMATION, "Operating System: %s %d.%d\nBuild: %d.%d\n", |
e99cd6e45c0b
Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
437
diff
changeset
|
44 env.osName, env.MajorVersion, env.MinorVersion, env.MajorBuild, env.MinorBuild); |
e99cd6e45c0b
Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
437
diff
changeset
|
45 |
437
903fb3085d42
More MacOS fixes, make install now works properly. Made special test
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
398
diff
changeset
|
46 return 0; |
903fb3085d42
More MacOS fixes, make install now works properly. Made special test
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
398
diff
changeset
|
47 } |
903fb3085d42
More MacOS fixes, make install now works properly. Made special test
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
398
diff
changeset
|
48 #else |
903fb3085d42
More MacOS fixes, make install now works properly. Made special test
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
398
diff
changeset
|
49 |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
50 HWND mainwindow, |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
51 entryfield, |
391
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
52 cursortogglebutton, |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
53 okbutton, |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
54 cancelbutton, |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
55 lbbox, |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
56 notebookbox, |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
57 notebookbox1, |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
58 notebookbox2, |
254
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
59 notebookbox3, |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
60 notebookbox4, |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
61 notebook, |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
62 vscrollbar, |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
63 hscrollbar, |
297
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
64 status, status1, |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
65 container_status, |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
66 tree_status, |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
67 stext, |
254
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
68 tree, |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
69 container, |
348
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
70 container_mle, |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
71 pagebox, |
254
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
72 treebox, |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
73 containerbox, |
257
9ea4ac9a097f
Added dw_icon_load_from_file() on OS/2 and Windows. Added a stub on Unix
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
254
diff
changeset
|
74 textbox1, textbox2, textboxA, |
254
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
75 gap_box, |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
76 buttonbox; |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
77 |
257
9ea4ac9a097f
Added dw_icon_load_from_file() on OS/2 and Windows. Added a stub on Unix
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
254
diff
changeset
|
78 HPIXMAP text1pm,text2pm; |
348
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
79 unsigned long fileicon,foldericon,mle_point=-1; |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
80 |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
81 int font_width = 8; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
82 int font_height=12; |
218
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
83 int rows=100,width1=6,cols=80; |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
84 char *current_file = NULL; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
85 int timerid; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
86 int num_lines=0; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
87 int max_linewidth=0; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
88 int current_row=0,current_col=0; |
391
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
89 int cursor_arrow = 1; |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
90 |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
91 FILE *fp=NULL; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
92 char **lp; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
93 |
297
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
94 char *resolve_keyname( int vk ) |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
95 { |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
96 char *keyname; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
97 switch(vk) |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
98 { |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
99 case VK_LBUTTON : keyname = "VK_LBUTTON"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
100 case VK_RBUTTON : keyname = "VK_RBUTTON"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
101 case VK_CANCEL : keyname = "VK_CANCEL"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
102 case VK_MBUTTON : keyname = "VK_MBUTTON"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
103 /* case VK_BACK : keyname = "VK_BACK"; break;*/ |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
104 case VK_TAB : keyname = "VK_TAB"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
105 case VK_CLEAR : keyname = "VK_CLEAR"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
106 case VK_RETURN : keyname = "VK_RETURN"; break; |
300
4559a2fd2db2
Keypress handler fixes, more need to be done, because I screwed up and
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
297
diff
changeset
|
107 /* case VK_MENU : keyname = "VK_MENU"; break;*/ |
297
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
108 case VK_PAUSE : keyname = "VK_PAUSE"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
109 case VK_CAPITAL : keyname = "VK_CAPITAL"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
110 case VK_ESCAPE : keyname = "VK_ESCAPE"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
111 case VK_SPACE : keyname = "VK_SPACE"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
112 case VK_PRIOR : keyname = "VK_PRIOR"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
113 case VK_NEXT : keyname = "VK_NEXT"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
114 case VK_END : keyname = "VK_END"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
115 case VK_HOME : keyname = "VK_HOME"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
116 case VK_LEFT : keyname = "VK_LEFT"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
117 case VK_UP : keyname = "VK_UP"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
118 case VK_RIGHT : keyname = "VK_RIGHT"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
119 case VK_DOWN : keyname = "VK_DOWN"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
120 case VK_SELECT : keyname = "VK_SELECT"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
121 case VK_PRINT : keyname = "VK_PRINT"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
122 case VK_EXECUTE : keyname = "VK_EXECUTE"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
123 case VK_SNAPSHOT: keyname = "VK_SNAPSHOT"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
124 case VK_INSERT : keyname = "VK_INSERT"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
125 case VK_DELETE : keyname = "VK_DELETE"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
126 case VK_HELP : keyname = "VK_HELP"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
127 case VK_LWIN : keyname = "VK_LWIN"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
128 case VK_RWIN : keyname = "VK_RWIN"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
129 case VK_NUMPAD0 : keyname = "VK_NUMPAD0"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
130 case VK_NUMPAD1 : keyname = "VK_NUMPAD1"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
131 case VK_NUMPAD2 : keyname = "VK_NUMPAD2"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
132 case VK_NUMPAD3 : keyname = "VK_NUMPAD3"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
133 case VK_NUMPAD4 : keyname = "VK_NUMPAD4"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
134 case VK_NUMPAD5 : keyname = "VK_NUMPAD5"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
135 case VK_NUMPAD6 : keyname = "VK_NUMPAD6"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
136 case VK_NUMPAD7 : keyname = "VK_NUMPAD7"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
137 case VK_NUMPAD8 : keyname = "VK_NUMPAD8"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
138 case VK_NUMPAD9 : keyname = "VK_NUMPAD9"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
139 case VK_MULTIPLY: keyname = "VK_MULTIPLY"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
140 case VK_ADD : keyname = "VK_ADD"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
141 case VK_SEPARATOR: keyname = "VK_SEPARATOR"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
142 case VK_SUBTRACT: keyname = "VK_SUBTRACT"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
143 case VK_DECIMAL : keyname = "VK_DECIMAL"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
144 case VK_DIVIDE : keyname = "VK_DIVIDE"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
145 case VK_F1 : keyname = "VK_F1"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
146 case VK_F2 : keyname = "VK_F2"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
147 case VK_F3 : keyname = "VK_F3"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
148 case VK_F4 : keyname = "VK_F4"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
149 case VK_F5 : keyname = "VK_F5"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
150 case VK_F6 : keyname = "VK_F6"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
151 case VK_F7 : keyname = "VK_F7"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
152 case VK_F8 : keyname = "VK_F8"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
153 case VK_F9 : keyname = "VK_F9"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
154 case VK_F10 : keyname = "VK_F10"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
155 case VK_F11 : keyname = "VK_F11"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
156 case VK_F12 : keyname = "VK_F12"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
157 case VK_F13 : keyname = "VK_F13"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
158 case VK_F14 : keyname = "VK_F14"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
159 case VK_F15 : keyname = "VK_F15"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
160 case VK_F16 : keyname = "VK_F16"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
161 case VK_F17 : keyname = "VK_F17"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
162 case VK_F18 : keyname = "VK_F18"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
163 case VK_F19 : keyname = "VK_F19"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
164 case VK_F20 : keyname = "VK_F20"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
165 case VK_F21 : keyname = "VK_F21"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
166 case VK_F22 : keyname = "VK_F22"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
167 case VK_F23 : keyname = "VK_F23"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
168 case VK_F24 : keyname = "VK_F24"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
169 case VK_NUMLOCK : keyname = "VK_NUMLOCK"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
170 case VK_SCROLL : keyname = "VK_SCROLL"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
171 case VK_LSHIFT : keyname = "VK_LSHIFT"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
172 case VK_RSHIFT : keyname = "VK_RSHIFT"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
173 case VK_LCONTROL: keyname = "VK_LCONTROL"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
174 case VK_RCONTROL: keyname = "VK_RCONTROL"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
175 /* case VK_LMENU : keyname = "VK_LMENU"; break; */ |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
176 /* case VK_RMENU : keyname = "VK_RMENU"; break;*/ |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
177 default: keyname = "<unknown>"; break; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
178 } |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
179 return keyname; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
180 } |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
181 |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
182 char *resolve_keymodifiers( int mask ) |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
183 { |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
184 if ( (mask & KC_CTRL) && (mask & KC_SHIFT) && (mask && KC_ALT) ) |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
185 return "KC_CTRL KC_SHIFT KC_ALT"; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
186 else if ( (mask & KC_CTRL) && (mask & KC_SHIFT) ) |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
187 return "KC_CTRL KC_SHIFT"; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
188 else if ( (mask & KC_CTRL) && (mask & KC_ALT) ) |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
189 return "KC_CTRL KC_ALT"; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
190 else if ( (mask & KC_SHIFT) && (mask & KC_ALT) ) |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
191 return "KC_SHIFT KC_ALT"; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
192 else if ( (mask & KC_SHIFT) ) |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
193 return "KC_SHIFT"; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
194 else if ( (mask & KC_CTRL) ) |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
195 return "KC_CTRL"; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
196 else if ( (mask & KC_ALT) ) |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
197 return "KC_ALT"; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
198 else return "none"; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
199 } |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
200 |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
201 /* This gets called when a part of the graph needs to be repainted. */ |
218
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
202 int DWSIGNAL text_expose(HWND hwnd, DWExpose *exp, void *data) |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
203 { |
254
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
204 HPIXMAP hpm; |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
205 int width,height; |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
206 |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
207 if ( hwnd == textbox1 ) |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
208 hpm = text1pm; |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
209 else if ( hwnd == textbox2 ) |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
210 hpm = text2pm; |
266
5c5bee286d0e
Fixed some warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
257
diff
changeset
|
211 else |
5c5bee286d0e
Fixed some warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
257
diff
changeset
|
212 return TRUE; |
254
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
213 |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
214 width = DW_PIXMAP_WIDTH(hpm); |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
215 height = DW_PIXMAP_HEIGHT(hpm); |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
216 |
289
0e6f09149eaa
Fixed some EMX warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
284
diff
changeset
|
217 dw_pixmap_bitblt(hwnd, NULL, 0, 0, width, height, 0, hpm, 0, 0 ); |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
218 dw_flush(); |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
219 return TRUE; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
220 } |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
221 |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
222 void read_file( void ) |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
223 { |
219
79968cf0f3b3
Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
218
diff
changeset
|
224 int i,len; |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
225 fp = fopen( current_file, "r" ); |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
226 lp = (char **)calloc( 1000,sizeof(char *)); |
218
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
227 /* should test for out of memory */ |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
228 max_linewidth=0; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
229 for ( i = 0; i < 1000; i++ ) |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
230 { |
227
5e6d8e024214
Use calloc instead of malloc so line buffers aren't filled with garbage.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
226
diff
changeset
|
231 lp[i] = (char *)calloc(1, 1025); |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
232 if ( fgets( lp[i], 1024, fp ) == NULL ) |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
233 break; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
234 len = strlen( lp[i] ); |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
235 if ( len > max_linewidth ) |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
236 max_linewidth = len; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
237 if ( lp[i][len - 1] == '\n' ) |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
238 lp[i][len - 1] = '\0'; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
239 } |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
240 num_lines = i; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
241 fclose( fp ); |
218
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
242 dw_scrollbar_set_range(hscrollbar, max_linewidth, cols); |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
243 dw_scrollbar_set_pos(hscrollbar, 0); |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
244 dw_scrollbar_set_range(vscrollbar, num_lines, rows); |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
245 dw_scrollbar_set_pos(vscrollbar, 0); |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
246 } |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
247 |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
248 void draw_file( int row, int col ) |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
249 { |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
250 char buf[10]; |
380
fcb52d773ed2
Implement tests for setting background color on render boxes.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
378
diff
changeset
|
251 int i,y,fileline; |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
252 char *pLine; |
226
2aee0b23e880
Removed unnecessary fprintf() statements.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
225
diff
changeset
|
253 |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
254 if ( current_file ) |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
255 { |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
256 dw_color_foreground_set(DW_CLR_WHITE); |
218
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
257 dw_draw_rect(0, text1pm, TRUE, 0, 0, DW_PIXMAP_WIDTH(text1pm), DW_PIXMAP_HEIGHT(text1pm)); |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
258 dw_draw_rect(0, text2pm, TRUE, 0, 0, DW_PIXMAP_WIDTH(text2pm), DW_PIXMAP_HEIGHT(text2pm)); |
380
fcb52d773ed2
Implement tests for setting background color on render boxes.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
378
diff
changeset
|
259 |
229
4166c18586e5
Fixed number of lines calculation in configure_event() taking into account
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
227
diff
changeset
|
260 for ( i = 0;(i < rows) && (i+row < num_lines); i++) |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
261 { |
380
fcb52d773ed2
Implement tests for setting background color on render boxes.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
378
diff
changeset
|
262 fileline = i + row - 1; |
385
761e5fddffca
Remove font_gap to make testing of render box drawing simpler.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
380
diff
changeset
|
263 y = i*font_height; |
380
fcb52d773ed2
Implement tests for setting background color on render boxes.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
378
diff
changeset
|
264 dw_color_background_set( 1 + (fileline % 15) ); |
fcb52d773ed2
Implement tests for setting background color on render boxes.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
378
diff
changeset
|
265 dw_color_foreground_set( fileline % 16 ); |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
266 sprintf( buf, "%6.6d", i+row ); |
289
0e6f09149eaa
Fixed some EMX warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
284
diff
changeset
|
267 dw_draw_text( 0, text1pm, 0, y, buf); |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
268 pLine = lp[i+row]; |
289
0e6f09149eaa
Fixed some EMX warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
284
diff
changeset
|
269 dw_draw_text( 0, text2pm, 0, y, pLine+col ); |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
270 } |
254
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
271 text_expose( textbox1, NULL, NULL); |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
272 text_expose( textbox2, NULL, NULL); |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
273 } |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
274 } |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
275 |
391
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
276 int DWSIGNAL cursortoggle_callback(HWND window, void *data) |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
277 { |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
278 if(cursor_arrow) |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
279 { |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
280 dw_window_set_text((HWND)cursortogglebutton,"Set Cursor pointer - ARROW"); |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
281 dw_window_pointer((HWND)data,DW_POINTER_CLOCK); |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
282 cursor_arrow = 0; |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
283 } |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
284 else |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
285 { |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
286 dw_window_set_text((HWND)cursortogglebutton,"Set Cursor pointer - CLOCK"); |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
287 dw_window_pointer((HWND)data,DW_POINTER_ARROW); |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
288 cursor_arrow = 1; |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
289 } |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
290 return FALSE; |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
291 } |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
292 |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
293 int DWSIGNAL beep_callback(HWND window, void *data) |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
294 { |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
295 dw_timer_disconnect( timerid ); |
218
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
296 return TRUE; |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
297 } |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
298 |
267
bf8b907f8a29
Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
266
diff
changeset
|
299 int DWSIGNAL keypress_callback(HWND window, char ch, int vk, int state, void *data) |
254
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
300 { |
297
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
301 char tmpbuf[100]; |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
302 if ( ch ) |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
303 sprintf( tmpbuf, "Key: %c(%d) Modifiers: %s(%d)", ch, ch, resolve_keymodifiers(state), state ); |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
304 else |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
305 sprintf( tmpbuf, "Key: %s(%d) Modifiers: %s(%d)", resolve_keyname(vk), vk, resolve_keymodifiers(state), state ); |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
306 dw_window_set_text( status1, tmpbuf); |
254
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
307 return 0; |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
308 } |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
309 |
192
d946e329670c
Added test application for OS/2, and allow dw_color_xxx_set() to use OS/2
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
191
diff
changeset
|
310 int DWSIGNAL exit_callback(HWND window, void *data) |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
311 { |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
312 dw_window_destroy((HWND)data); |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
313 exit(0); |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
314 return -1; |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
315 } |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
316 |
192
d946e329670c
Added test application for OS/2, and allow dw_color_xxx_set() to use OS/2
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
191
diff
changeset
|
317 int DWSIGNAL test_callback(HWND window, void *data) |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
318 { |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
319 dw_window_destroy((HWND)data); |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
320 if ( current_file ) |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
321 dw_free( current_file ); |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
322 exit(0); |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
323 return -1; |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
324 } |
192
d946e329670c
Added test application for OS/2, and allow dw_color_xxx_set() to use OS/2
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
191
diff
changeset
|
325 |
d946e329670c
Added test application for OS/2, and allow dw_color_xxx_set() to use OS/2
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
191
diff
changeset
|
326 int DWSIGNAL browse_callback(HWND window, void *data) |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
327 { |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
328 char *tmp; |
487
d6e07d292145
Implemented taskbar icons on windows, so I can keep feature for feature
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
474
diff
changeset
|
329 tmp = dw_file_browse("test string", NULL, "c", DW_DIRECTORY_OPEN ); |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
330 if ( tmp ) |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
331 { |
231
a3775f5b877f
Only free current_file when we have a new file selected to show.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
229
diff
changeset
|
332 if ( current_file ) |
a3775f5b877f
Only free current_file when we have a new file selected to show.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
229
diff
changeset
|
333 { |
a3775f5b877f
Only free current_file when we have a new file selected to show.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
229
diff
changeset
|
334 dw_free( current_file ); |
a3775f5b877f
Only free current_file when we have a new file selected to show.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
229
diff
changeset
|
335 } |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
336 current_file = tmp; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
337 dw_window_set_text( entryfield, current_file ); |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
338 read_file(); |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
339 draw_file(0,0); |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
340 } |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
341 return 0; |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
342 } |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
343 |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
344 /* Callback to handle user selection of the scrollbar position */ |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
345 void DWSIGNAL scrollbar_valuechanged(HWND hwnd, int value, void *data) |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
346 { |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
347 if(data) |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
348 { |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
349 HWND stext = (HWND)data; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
350 char tmpbuf[100]; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
351 if ( hwnd == vscrollbar ) |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
352 { |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
353 current_row = value; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
354 } |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
355 else |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
356 { |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
357 current_col = value; |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
358 } |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
359 sprintf(tmpbuf, "Row:%d Col:%d Lines:%d Cols:%d", current_row,current_col,num_lines,max_linewidth); |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
360 dw_window_set_text(stext, tmpbuf); |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
361 draw_file( current_row, current_col); |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
362 } |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
363 } |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
364 |
218
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
365 /* Handle size change of the main render window */ |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
366 int DWSIGNAL configure_event(HWND hwnd, int width, int height, void *data) |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
367 { |
257
9ea4ac9a097f
Added dw_icon_load_from_file() on OS/2 and Windows. Added a stub on Unix
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
254
diff
changeset
|
368 HPIXMAP old1 = text1pm, old2 = text2pm; |
222
7bb6cb6f612c
Another minor change... create the first pixmap to the correct window
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
221
diff
changeset
|
369 int depth = dw_color_depth(); |
7bb6cb6f612c
Another minor change... create the first pixmap to the correct window
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
221
diff
changeset
|
370 |
385
761e5fddffca
Remove font_gap to make testing of render box drawing simpler.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
380
diff
changeset
|
371 rows = height / font_height; |
218
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
372 cols = width / font_width; |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
373 |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
374 /* Create new pixmaps with the current sizes */ |
380
fcb52d773ed2
Implement tests for setting background color on render boxes.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
378
diff
changeset
|
375 text1pm = dw_pixmap_new(textbox1, (font_width*(width1)), height, depth); |
222
7bb6cb6f612c
Another minor change... create the first pixmap to the correct window
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
221
diff
changeset
|
376 text2pm = dw_pixmap_new(textbox2, width, height, depth); |
218
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
377 |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
378 /* Destroy the old pixmaps */ |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
379 dw_pixmap_destroy(old1); |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
380 dw_pixmap_destroy(old2); |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
381 |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
382 /* Update scrollbar ranges with new values */ |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
383 dw_scrollbar_set_range(hscrollbar, max_linewidth, cols); |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
384 dw_scrollbar_set_range(vscrollbar, num_lines, rows); |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
385 |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
386 /* Redraw the window */ |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
387 draw_file( current_row, current_col); |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
388 return TRUE; |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
389 } |
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
390 |
311
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
391 int DWSIGNAL item_enter_cb( HWND window, char *text, void *data ) |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
392 { |
311
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
393 char buf[200]; |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
394 HWND statline = (HWND)data; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
395 |
324
c13312a6b8dc
Clean up an errant printf().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
323
diff
changeset
|
396 sprintf(buf,"DW_SIGNAL_ITEM_ENTER: Window: %x Text: %s", (unsigned int)window, text ); |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
397 dw_window_set_text( statline, buf); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
398 return 0; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
399 } |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
400 |
311
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
401 int DWSIGNAL item_context_cb( HWND window, char *text, int x, int y, void *data, void *itemdata ) |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
402 { |
311
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
403 char buf[200]; |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
404 HWND statline = (HWND)data; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
405 |
313
a3dee031d27e
Cleaned up unix warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
312
diff
changeset
|
406 sprintf(buf,"DW_SIGNAL_ITEM_CONTEXT: Window: %x Text: %s x: %d y: %d Itemdata: %x", (unsigned int)window, text, x, y, (unsigned int)itemdata ); |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
407 dw_window_set_text( statline, buf); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
408 return 0; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
409 } |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
410 |
311
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
411 int DWSIGNAL list_select_cb( HWND window, int item, void *data ) |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
412 { |
311
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
413 char buf[200]; |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
414 HWND statline = (HWND)data; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
415 |
313
a3dee031d27e
Cleaned up unix warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
312
diff
changeset
|
416 sprintf(buf,"DW_SIGNAL_LIST_SELECT: Window: %d Item: %d", (unsigned int)window, item ); |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
417 dw_window_set_text( statline, buf); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
418 return 0; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
419 } |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
420 |
328
e00aff2b899e
Tree item handles are now of the type HTREEITEM instead of HWND since they
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
327
diff
changeset
|
421 int DWSIGNAL item_select_cb( HWND window, HTREEITEM item, char *text, void *data, void *itemdata ) |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
422 { |
311
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
423 char buf[200]; |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
424 HWND statline = (HWND)data; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
425 |
313
a3dee031d27e
Cleaned up unix warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
312
diff
changeset
|
426 sprintf(buf,"DW_SIGNAL_ITEM_SELECT: Window: %x Item: %x Text: %s Itemdata: %x", (unsigned int)window, (unsigned int)item, text, (unsigned int)itemdata ); |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
427 dw_window_set_text( statline, buf); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
428 return 0; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
429 } |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
430 |
348
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
431 int DWSIGNAL container_select_cb( HWND window, HTREEITEM item, char *text, void *data, void *itemdata ) |
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
432 { |
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
433 char buf[200]; |
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
434 char *str; |
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
435 HWND statline = (HWND)data; |
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
436 |
349
5d3f2e2dcc6b
Add CRLF to lines displayed in MLE.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
348
diff
changeset
|
437 sprintf(buf,"DW_SIGNAL_ITEM_SELECT: Window: %x Item: %x Text: %s Itemdata: %x", (unsigned int)window, (unsigned int)item, text, (unsigned int)itemdata ); |
348
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
438 dw_window_set_text( statline, buf); |
349
5d3f2e2dcc6b
Add CRLF to lines displayed in MLE.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
348
diff
changeset
|
439 sprintf(buf,"\r\nDW_SIGNAL_ITEM_SELECT: Window: %x Item: %x Text: %s Itemdata: %x\r\n", (unsigned int)window, (unsigned int)item, text, (unsigned int)itemdata ); |
348
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
440 mle_point = dw_mle_import( container_mle, buf, mle_point); |
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
441 str = dw_container_query_start(container, DW_CRA_SELECTED); |
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
442 while(str) |
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
443 { |
349
5d3f2e2dcc6b
Add CRLF to lines displayed in MLE.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
348
diff
changeset
|
444 sprintf(buf,"Selected: %s\r\n", str); |
348
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
445 mle_point = dw_mle_import( container_mle, buf, mle_point); |
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
446 str = dw_container_query_next(container, DW_CRA_SELECTED); |
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
447 } |
350
2216e65ad2ae
Removed slider flags and container selection flags from the header file.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
349
diff
changeset
|
448 /* Make the last inserted point the cursor location */ |
2216e65ad2ae
Removed slider flags and container selection flags from the header file.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
349
diff
changeset
|
449 dw_mle_set(container_mle, mle_point); |
348
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
450 return 0; |
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
451 } |
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
452 |
346
81fae15885d7
Implemented switch-page on OS/2, and changed the signal prototype to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
336
diff
changeset
|
453 int DWSIGNAL switch_page_cb( HWND window, unsigned long page_num, void *itemdata ) |
333
b6491cefa512
Add test for switch-page signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
328
diff
changeset
|
454 { |
346
81fae15885d7
Implemented switch-page on OS/2, and changed the signal prototype to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
336
diff
changeset
|
455 FILE *fp=fopen("log","a"); |
81fae15885d7
Implemented switch-page on OS/2, and changed the signal prototype to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
336
diff
changeset
|
456 fprintf(fp,"DW_SIGNAL_SWITCH_PAGE: Window: %x PageNum: %u Itemdata: %x\n", (unsigned int)window, (unsigned int)page_num, (unsigned int)itemdata ); |
81fae15885d7
Implemented switch-page on OS/2, and changed the signal prototype to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
336
diff
changeset
|
457 fclose(fp); |
333
b6491cefa512
Add test for switch-page signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
328
diff
changeset
|
458 return 0; |
b6491cefa512
Add test for switch-page signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
328
diff
changeset
|
459 } |
b6491cefa512
Add test for switch-page signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
328
diff
changeset
|
460 |
474
053211e0698b
Add tracing code for column-click signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
459
diff
changeset
|
461 int DWSIGNAL column_click_cb( HWND window, int column_num, void *data ) |
053211e0698b
Add tracing code for column-click signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
459
diff
changeset
|
462 { |
053211e0698b
Add tracing code for column-click signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
459
diff
changeset
|
463 char buf[200]; |
053211e0698b
Add tracing code for column-click signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
459
diff
changeset
|
464 HWND statline = (HWND)data; |
053211e0698b
Add tracing code for column-click signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
459
diff
changeset
|
465 |
053211e0698b
Add tracing code for column-click signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
459
diff
changeset
|
466 sprintf(buf,"DW_SIGNAL_COLUMN_CLICK: Window: %x Column: %d Itemdata: %x", (unsigned int)window, column_num, (unsigned int)data ); |
053211e0698b
Add tracing code for column-click signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
459
diff
changeset
|
467 dw_window_set_text( statline, buf); |
053211e0698b
Add tracing code for column-click signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
459
diff
changeset
|
468 return 0; |
053211e0698b
Add tracing code for column-click signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
459
diff
changeset
|
469 } |
053211e0698b
Add tracing code for column-click signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
459
diff
changeset
|
470 |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
471 void archive_add(void) |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
472 { |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
473 HWND browsebutton, browsebox; |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
474 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
475 lbbox = dw_box_new(BOXVERT, 10); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
476 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
477 dw_box_pack_start(notebookbox1, lbbox, 150, 70, TRUE, TRUE, 0); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
478 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
479 /* Archive Name */ |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
480 stext = dw_text_new("File to browse", 0); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
481 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
482 dw_window_set_style(stext, DW_DT_VCENTER, DW_DT_VCENTER); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
483 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
484 dw_box_pack_start(lbbox, stext, 130, 15, TRUE, TRUE, 2); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
485 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
486 browsebox = dw_box_new(BOXHORZ, 0); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
487 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
488 dw_box_pack_start(lbbox, browsebox, 0, 0, TRUE, TRUE, 0); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
489 |
378
12b3980a41a2
Reverted a test change I accidentally committed.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
377
diff
changeset
|
490 entryfield = dw_entryfield_new("", 100L); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
491 |
308
f844a07c5915
Get it working on OS/2. :)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
305
diff
changeset
|
492 dw_entryfield_set_limit(entryfield, 260); |
f844a07c5915
Get it working on OS/2. :)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
305
diff
changeset
|
493 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
494 dw_box_pack_start(browsebox, entryfield, 100, 15, TRUE, TRUE, 4); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
495 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
496 browsebutton = dw_button_new("Browse", 1001L); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
497 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
498 dw_box_pack_start(browsebox, browsebutton, 30, 15, TRUE, TRUE, 0); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
499 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
500 dw_window_set_color(browsebox, DW_CLR_PALEGRAY, DW_CLR_PALEGRAY); |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
501 dw_window_set_color(stext, DW_CLR_BLACK, DW_CLR_PALEGRAY); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
502 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
503 /* Buttons */ |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
504 buttonbox = dw_box_new(BOXHORZ, 10); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
505 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
506 dw_box_pack_start(lbbox, buttonbox, 0, 0, TRUE, TRUE, 0); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
507 |
391
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
508 cursortogglebutton = dw_button_new("Set Cursor pointer - CLOCK", 1003L); |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
509 |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
510 dw_box_pack_start(buttonbox, cursortogglebutton, 130, 30, TRUE, TRUE, 2); |
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
511 |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
512 okbutton = dw_button_new("Turn Off Annoying Beep!", 1001L); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
513 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
514 dw_box_pack_start(buttonbox, okbutton, 130, 30, TRUE, TRUE, 2); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
515 |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
516 cancelbutton = dw_button_new("Exit", 1002L); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
517 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
518 dw_box_pack_start(buttonbox, cancelbutton, 130, 30, TRUE, TRUE, 2); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
519 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
520 /* Set some nice fonts and colors */ |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
521 dw_window_set_color(lbbox, DW_CLR_DARKCYAN, DW_CLR_PALEGRAY); |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
522 dw_window_set_color(buttonbox, DW_CLR_DARKCYAN, DW_CLR_PALEGRAY); |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
523 dw_window_set_color(okbutton, DW_CLR_PALEGRAY, DW_CLR_DARKCYAN); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
524 |
311
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
525 dw_signal_connect(browsebutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(browse_callback), (void *)notebookbox1); |
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
526 dw_signal_connect(okbutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(beep_callback), (void *)notebookbox1); |
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
527 dw_signal_connect(cancelbutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(exit_callback), (void *)mainwindow); |
391
2059f18e9c20
Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
385
diff
changeset
|
528 dw_signal_connect(cursortogglebutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(cursortoggle_callback), (void *)mainwindow); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
529 } |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
530 |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
531 |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
532 void text_add(void) |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
533 { |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
534 int depth = dw_color_depth(); |
252
eab1540444b2
Make an empty space where the scrollbars meet.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
232
diff
changeset
|
535 HWND vscrollbox; |
213
f8b50901ac45
Added verticle scrollbar test to the sample.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
207
diff
changeset
|
536 |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
537 /* create a box to pack into the notebook page */ |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
538 pagebox = dw_box_new(BOXHORZ, 2); |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
539 dw_box_pack_start( notebookbox2, pagebox, 0, 0, TRUE, TRUE, 0); |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
540 /* now a status area under this box */ |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
541 status = dw_status_text_new("", 0); |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
542 dw_box_pack_start( notebookbox2, status, 100, 20, TRUE, FALSE, 1); |
297
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
543 /* and another one */ |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
544 status1 = dw_status_text_new("", 0); |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
545 dw_box_pack_start( notebookbox2, status1, 100, 20, TRUE, FALSE, 1); |
213
f8b50901ac45
Added verticle scrollbar test to the sample.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
207
diff
changeset
|
546 |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
547 /* create render box for number pixmap */ |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
548 textbox1 = dw_render_new( 100 ); |
219
79968cf0f3b3
Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
218
diff
changeset
|
549 dw_window_set_font(textbox1, FIXEDFONT); |
385
761e5fddffca
Remove font_gap to make testing of render box drawing simpler.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
380
diff
changeset
|
550 dw_font_text_extents(textbox1, NULL, "(g", &font_width, &font_height); |
380
fcb52d773ed2
Implement tests for setting background color on render boxes.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
378
diff
changeset
|
551 font_width = font_width / 2; |
257
9ea4ac9a097f
Added dw_icon_load_from_file() on OS/2 and Windows. Added a stub on Unix
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
254
diff
changeset
|
552 vscrollbox = dw_box_new(BOXVERT, 0); |
297
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
553 dw_box_pack_start(vscrollbox, textbox1, font_width*width1, font_height*rows, FALSE, TRUE, 0); |
257
9ea4ac9a097f
Added dw_icon_load_from_file() on OS/2 and Windows. Added a stub on Unix
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
254
diff
changeset
|
554 dw_box_pack_start(vscrollbox, 0, (font_width*(width1+1)), SCROLLBARWIDTH, FALSE, FALSE, 0); |
9ea4ac9a097f
Added dw_icon_load_from_file() on OS/2 and Windows. Added a stub on Unix
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
254
diff
changeset
|
555 dw_box_pack_start(pagebox, vscrollbox, 0, 0, FALSE, TRUE, 0); |
254
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
556 |
380
fcb52d773ed2
Implement tests for setting background color on render boxes.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
378
diff
changeset
|
557 /* pack empty space 1 character wide */ |
fcb52d773ed2
Implement tests for setting background color on render boxes.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
378
diff
changeset
|
558 dw_box_pack_start(pagebox, 0, font_width, 0, FALSE, TRUE, 0); |
fcb52d773ed2
Implement tests for setting background color on render boxes.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
378
diff
changeset
|
559 |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
560 /* create box for filecontents and horz scrollbar */ |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
561 textboxA = dw_box_new( BOXVERT,0 ); |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
562 dw_box_pack_start( pagebox, textboxA, 0, 0, TRUE, TRUE, 0); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
563 |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
564 /* create render box for filecontents pixmap */ |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
565 textbox2 = dw_render_new( 101 ); |
218
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
566 dw_box_pack_start( textboxA, textbox2, 10, 10, TRUE, TRUE, 0); |
219
79968cf0f3b3
Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
218
diff
changeset
|
567 dw_window_set_font(textbox2, FIXEDFONT); |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
568 /* create horizonal scrollbar */ |
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
569 hscrollbar = dw_scrollbar_new(FALSE, 100, 50); |
257
9ea4ac9a097f
Added dw_icon_load_from_file() on OS/2 and Windows. Added a stub on Unix
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
254
diff
changeset
|
570 dw_box_pack_start( textboxA, hscrollbar, 100, SCROLLBARWIDTH, TRUE, FALSE, 0); |
197
f3718165f0b2
Implemented scrollbars and timers on Windows, and added scrollbar to the
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
195
diff
changeset
|
571 |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
572 /* create vertical scrollbar */ |
252
eab1540444b2
Make an empty space where the scrollbars meet.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
232
diff
changeset
|
573 vscrollbox = dw_box_new(BOXVERT, 0); |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
574 vscrollbar = dw_scrollbar_new(TRUE, 100, 50); |
257
9ea4ac9a097f
Added dw_icon_load_from_file() on OS/2 and Windows. Added a stub on Unix
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
254
diff
changeset
|
575 dw_box_pack_start(vscrollbox, vscrollbar, SCROLLBARWIDTH, 100, FALSE, TRUE, 0); |
253
e041ce42659a
Added a comment describing how it works.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
252
diff
changeset
|
576 /* Pack an area of empty space 14x14 pixels */ |
257
9ea4ac9a097f
Added dw_icon_load_from_file() on OS/2 and Windows. Added a stub on Unix
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
254
diff
changeset
|
577 dw_box_pack_start(vscrollbox, 0, SCROLLBARWIDTH, SCROLLBARWIDTH, FALSE, FALSE, 0); |
252
eab1540444b2
Make an empty space where the scrollbars meet.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
232
diff
changeset
|
578 dw_box_pack_start(pagebox, vscrollbox, 0, 0, FALSE, TRUE, 0); |
206
f7911991c5df
Show info about the scrollbar in a status text control.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
203
diff
changeset
|
579 |
385
761e5fddffca
Remove font_gap to make testing of render box drawing simpler.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
380
diff
changeset
|
580 text1pm = dw_pixmap_new( textbox1, font_width*width1, font_height*rows, depth ); |
218
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
581 text2pm = dw_pixmap_new( textbox2, font_width*cols, font_height*rows, depth ); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
582 |
398
255a31a3a1f5
Change to dw_messagebox() call
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
391
diff
changeset
|
583 dw_messagebox("DWTest", DW_MB_OK|DW_MB_INFORMATION, "Width: %d Height: %d\n", font_width, font_height); |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
584 dw_draw_rect(0, text1pm, TRUE, 0, 0, font_width*width1, font_height*rows); |
218
fe0ab0040ba2
Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
217
diff
changeset
|
585 dw_draw_rect(0, text2pm, TRUE, 0, 0, font_width*cols, font_height*rows); |
311
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
586 dw_signal_connect(textbox1, DW_SIGNAL_EXPOSE, DW_SIGNAL_FUNC(text_expose), NULL); |
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
587 dw_signal_connect(textbox2, DW_SIGNAL_EXPOSE, DW_SIGNAL_FUNC(text_expose), NULL); |
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
588 dw_signal_connect(textbox2, DW_SIGNAL_CONFIGURE, DW_SIGNAL_FUNC(configure_event), text2pm); |
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
589 dw_signal_connect(hscrollbar, DW_SIGNAL_VALUE_CHANGED, DW_SIGNAL_FUNC(scrollbar_valuechanged), (void *)status); |
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
590 dw_signal_connect(vscrollbar, DW_SIGNAL_VALUE_CHANGED, DW_SIGNAL_FUNC(scrollbar_valuechanged), (void *)status); |
297
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
591 |
311
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
592 dw_signal_connect(mainwindow, DW_SIGNAL_KEY_PRESS, DW_SIGNAL_FUNC(keypress_callback), NULL); |
254
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
593 } |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
594 |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
595 void tree_add(void) |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
596 { |
328
e00aff2b899e
Tree item handles are now of the type HTREEITEM instead of HWND since they
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
327
diff
changeset
|
597 HTREEITEM t1,t2,t3,t4,t5,t6; |
254
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
598 |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
599 /* create a box to pack into the notebook page */ |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
600 treebox = dw_box_new(BOXHORZ, 2); |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
601 dw_box_pack_start( notebookbox3, treebox, 500, 200, TRUE, TRUE, 0); |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
602 |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
603 /* now a tree area under this box */ |
308
f844a07c5915
Get it working on OS/2. :)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
305
diff
changeset
|
604 tree = dw_tree_new(101); |
254
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
605 dw_box_pack_start( notebookbox3, tree, 500, 200, TRUE, FALSE, 1); |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
606 |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
607 /* and a status area to see whats going on */ |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
608 tree_status = dw_status_text_new("", 0); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
609 dw_box_pack_start( notebookbox3, tree_status, 100, 20, TRUE, FALSE, 1); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
610 |
297
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
611 foldericon = dw_icon_load_from_file( FOLDER_ICON_NAME ); |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
612 fileicon = dw_icon_load_from_file( FILE_ICON_NAME ); |
5414d3d582e4
Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
293
diff
changeset
|
613 |
323
3dab9f31aeff
Mark, we must connect signal handlers before populating the tree on GTK 1.x.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
313
diff
changeset
|
614 /* set up our signal trappers... */ |
3dab9f31aeff
Mark, we must connect signal handlers before populating the tree on GTK 1.x.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
313
diff
changeset
|
615 dw_signal_connect(tree, DW_SIGNAL_ITEM_CONTEXT, DW_SIGNAL_FUNC(item_context_cb), (void *)tree_status); |
3dab9f31aeff
Mark, we must connect signal handlers before populating the tree on GTK 1.x.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
313
diff
changeset
|
616 dw_signal_connect(tree, DW_SIGNAL_ITEM_SELECT, DW_SIGNAL_FUNC(item_select_cb), (void *)tree_status); |
3dab9f31aeff
Mark, we must connect signal handlers before populating the tree on GTK 1.x.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
313
diff
changeset
|
617 |
312
ff8f23594b15
Make sure itemdata is NULL for container callbacks.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
311
diff
changeset
|
618 t1 = dw_tree_insert(tree, "tree folder 1", foldericon, NULL, (void *)1 ); |
ff8f23594b15
Make sure itemdata is NULL for container callbacks.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
311
diff
changeset
|
619 t2 = dw_tree_insert(tree, "tree folder 2", foldericon, NULL, (void *)2 ); |
ff8f23594b15
Make sure itemdata is NULL for container callbacks.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
311
diff
changeset
|
620 t3 = dw_tree_insert(tree, "tree file 1", fileicon, t1, (void *)3 ); |
ff8f23594b15
Make sure itemdata is NULL for container callbacks.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
311
diff
changeset
|
621 t4 = dw_tree_insert(tree, "tree file 2", fileicon, t1, (void *)4 ); |
ff8f23594b15
Make sure itemdata is NULL for container callbacks.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
311
diff
changeset
|
622 t5 = dw_tree_insert(tree, "tree file 3", fileicon, t2, (void *)5 ); |
ff8f23594b15
Make sure itemdata is NULL for container callbacks.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
311
diff
changeset
|
623 t6 = dw_tree_insert(tree, "tree file 4", fileicon, t2, (void *)6 ); |
459
1a938804ef01
Add a couple of redundant dw_tree_set() calls to highlight errors with the
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
443
diff
changeset
|
624 /* set the folder name and icon again to show error with dw_tree_set under GTK 2.0 */ |
1a938804ef01
Add a couple of redundant dw_tree_set() calls to highlight errors with the
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
443
diff
changeset
|
625 dw_tree_set(tree, t1, "tree folder 1", foldericon ); |
1a938804ef01
Add a couple of redundant dw_tree_set() calls to highlight errors with the
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
443
diff
changeset
|
626 dw_tree_set(tree, t2, "tree folder 2", foldericon ); |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
627 } |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
628 |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
629 void container_add(void) |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
630 { |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
631 char *titles[3]; |
348
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
632 char *names[3]; |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
633 char buffer[100]; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
634 unsigned long flags[3] = { DW_CFA_ULONG | DW_CFA_RIGHT | DW_CFA_HORZSEPARATOR | DW_CFA_SEPARATOR, |
335
97029f1f29de
Minor change to container page to show right justification on ULONGS doesn't work.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
333
diff
changeset
|
635 DW_CFA_TIME | DW_CFA_CENTER | DW_CFA_HORZSEPARATOR | DW_CFA_SEPARATOR, |
97029f1f29de
Minor change to container page to show right justification on ULONGS doesn't work.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
333
diff
changeset
|
636 DW_CFA_DATE | DW_CFA_LEFT | DW_CFA_HORZSEPARATOR | DW_CFA_SEPARATOR }; |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
637 void *containerinfo; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
638 int z; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
639 CTIME time; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
640 CDATE date; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
641 unsigned long size, thisicon; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
642 |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
643 /* create a box to pack into the notebook page */ |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
644 containerbox = dw_box_new(BOXHORZ, 2); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
645 dw_box_pack_start( notebookbox4, containerbox, 500, 200, TRUE, TRUE, 0); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
646 |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
647 /* now a container area under this box */ |
350
2216e65ad2ae
Removed slider flags and container selection flags from the header file.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
349
diff
changeset
|
648 container = dw_container_new(100, TRUE); |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
649 dw_box_pack_start( notebookbox4, container, 500, 200, TRUE, FALSE, 1); |
254
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
650 |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
651 /* and a status area to see whats going on */ |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
652 container_status = dw_status_text_new("", 0); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
653 dw_box_pack_start( notebookbox4, container_status, 100, 20, TRUE, FALSE, 1); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
654 |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
655 titles[0] = "Size"; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
656 titles[1] = "Time"; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
657 titles[2] = "Date"; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
658 |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
659 dw_filesystem_setup(container, flags, titles, 3); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
660 containerinfo = dw_container_alloc(container, 3); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
661 |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
662 for(z=0;z<3;z++) |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
663 { |
348
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
664 names[z] = (char *)malloc( 100 ); |
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
665 /* yes, there is a memory leak here */ |
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
666 sprintf(names[z],"Don't allocate from stack: Item: %d",z); |
335
97029f1f29de
Minor change to container page to show right justification on ULONGS doesn't work.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
333
diff
changeset
|
667 size = z*100; |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
668 sprintf(buffer, "Filename %d",z+1); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
669 if (z == 0 ) thisicon = foldericon; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
670 else thisicon = fileicon; |
327
3204b978e077
Removed strdup() since new container code on OS/2 no longer requires it.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
324
diff
changeset
|
671 dw_filesystem_set_file(container, containerinfo, z, buffer, thisicon); |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
672 dw_filesystem_set_item(container, containerinfo, 0, z, &size); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
673 |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
674 time.seconds = z+10; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
675 time.minutes = z+10; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
676 time.hours = z+10; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
677 dw_filesystem_set_item(container, containerinfo, 1, z, &time); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
678 |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
679 date.day = z+10; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
680 date.month = z+10; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
681 date.year = z+2000; |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
682 dw_filesystem_set_item(container, containerinfo, 2, z, &date); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
683 |
348
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
684 dw_container_set_row_title(containerinfo, z, names[z]); |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
685 } |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
686 |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
687 dw_container_insert(container, containerinfo, 3); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
688 dw_container_optimize(container); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
689 |
348
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
690 container_mle = dw_mle_new( 111 ); |
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
691 dw_box_pack_start( containerbox, container_mle, 500, 200, TRUE, TRUE, 0); |
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
692 |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
693 /* connect our event trappers... */ |
311
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
694 dw_signal_connect(container, DW_SIGNAL_ITEM_ENTER, DW_SIGNAL_FUNC(item_enter_cb), (void *)container_status); |
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
695 dw_signal_connect(container, DW_SIGNAL_ITEM_CONTEXT, DW_SIGNAL_FUNC(item_context_cb), (void *)container_status); |
348
fa6aeb52d51a
Added MLE for the container page to show what is going on in the item-select
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
346
diff
changeset
|
696 dw_signal_connect(container, DW_SIGNAL_ITEM_SELECT, DW_SIGNAL_FUNC(container_select_cb), (void *)container_status); |
474
053211e0698b
Add tracing code for column-click signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
459
diff
changeset
|
697 dw_signal_connect(container, DW_SIGNAL_COLUMN_CLICK, DW_SIGNAL_FUNC(column_click_cb), (void *)container_status); |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
698 } |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
699 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
700 /* Beep every second */ |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
701 int DWSIGNAL timer_callback(void *data) |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
702 { |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
703 dw_beep(200, 200); |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
704 |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
705 /* Return TRUE so we get called again */ |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
706 return TRUE; |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
707 } |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
708 |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
709 /* |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
710 * Let's demonstrate the functionality of this library. :) |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
711 */ |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
712 int main(int argc, char *argv[]) |
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
713 { |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
714 ULONG notebookpage1; |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
715 ULONG notebookpage2; |
254
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
716 ULONG notebookpage3; |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
717 ULONG notebookpage4; |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
718 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
719 dw_init(TRUE, argc, argv); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
720 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
721 mainwindow = dw_window_new( HWND_DESKTOP, "dwindows test", flStyle | DW_FCF_SIZEBORDER | DW_FCF_MINMAX ); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
722 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
723 notebookbox = dw_box_new( BOXVERT, 5 ); |
217
7112c817573d
Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
213
diff
changeset
|
724 dw_box_pack_start( mainwindow, notebookbox, 0, 0, TRUE, TRUE, 0); |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
725 |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
726 notebook = dw_notebook_new( 1, TRUE ); |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
727 dw_box_pack_start( notebookbox, notebook, 100, 100, TRUE, TRUE, 0); |
333
b6491cefa512
Add test for switch-page signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
328
diff
changeset
|
728 dw_signal_connect(notebook, DW_SIGNAL_SWITCH_PAGE, DW_SIGNAL_FUNC(switch_page_cb), NULL); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
729 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
730 notebookbox1 = dw_box_new( BOXVERT, 5 ); |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
731 notebookpage1 = dw_notebook_page_new( notebook, 0, TRUE ); |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
732 dw_notebook_pack( notebook, notebookpage1, notebookbox1 ); |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
733 dw_notebook_page_set_text( notebook, notebookpage1, "buttons and entry"); |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
734 archive_add(); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
735 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
736 notebookbox2 = dw_box_new( BOXVERT, 5 ); |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
737 notebookpage2 = dw_notebook_page_new( notebook, 1, FALSE ); |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
738 dw_notebook_pack( notebook, notebookpage2, notebookbox2 ); |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
739 dw_notebook_page_set_text( notebook, notebookpage2, "render"); |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
740 text_add(); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
741 |
254
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
742 notebookbox3 = dw_box_new( BOXVERT, 5 ); |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
743 notebookpage3 = dw_notebook_page_new( notebook, 1, FALSE ); |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
744 dw_notebook_pack( notebook, notebookpage3, notebookbox3 ); |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
745 dw_notebook_page_set_text( notebook, notebookpage3, "tree"); |
254
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
746 tree_add(); |
42332e598d55
Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
253
diff
changeset
|
747 |
304
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
748 notebookbox4 = dw_box_new( BOXVERT, 5 ); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
749 notebookpage4 = dw_notebook_page_new( notebook, 1, FALSE ); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
750 dw_notebook_pack( notebook, notebookpage4, notebookbox4 ); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
751 dw_notebook_page_set_text( notebook, notebookpage4, "container"); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
752 container_add(); |
c28c0a804442
Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
300
diff
changeset
|
753 |
311
24c1dfffe97e
Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
310
diff
changeset
|
754 dw_signal_connect(mainwindow, DW_SIGNAL_DELETE, DW_SIGNAL_FUNC(exit_callback), (void *)mainwindow); |
199
b955228477b3
Removed the window parameter to dw_timer_connect() it was no needed.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
198
diff
changeset
|
755 timerid = dw_timer_connect(1000, DW_SIGNAL_FUNC(timer_callback), 0); |
336
a2f72b5d5d0a
Minor change to dw_window_set_icon() on OS/2 and Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
335
diff
changeset
|
756 dw_window_set_icon(mainwindow, fileicon); |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
757 dw_window_set_usize(mainwindow, 640, 480); |
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
758 dw_window_show(mainwindow); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
759 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
760 dw_main(); |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
761 |
195
b023d363fc09
Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
193
diff
changeset
|
762 return 0; |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff
changeset
|
763 } |
437
903fb3085d42
More MacOS fixes, make install now works properly. Made special test
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
398
diff
changeset
|
764 #endif |