annotate dwtest.c @ 1599:d2864925afb9

Last commit didn't work with GCC... not quite as pretty but this works.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Sat, 25 Feb 2012 23:22:49 +0000
parents ee47bda26916
children 71e0a3ad07f7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1560
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1 /*
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
2 * An example Dynamic Windows application and
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
3 * testing ground for Dynamic Windows features.
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
4 * By: Brian Smith and Mark Hessling
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
5 */
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
6 #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
7 #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
8 #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
9 #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
10
219
79968cf0f3b3 Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 218
diff changeset
11 /* Select a fixed width font for our platform */
79968cf0f3b3 Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 218
diff changeset
12 #ifdef __OS2__
79968cf0f3b3 Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 218
diff changeset
13 #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
14 #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
15 #define FILE_ICON_NAME "os2\\file"
219
79968cf0f3b3 Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 218
diff changeset
16 #elif defined(__WIN32__)
1242
8e37ebb3fab7 Changed FIXEDFONT to "Lucinda Console" on Windows. Terminal looks better to me...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1230
diff changeset
17 #define FIXEDFONT "10.Lucida Console"
305
32ad8a0dc06b Escape backslashes so icons under Windows and OS/2 can be found.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 304
diff changeset
18 #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
19 #define FILE_ICON_NAME "win\\file"
674
78f9aa6d6d89 Fixes or fonts and loading images from files. Added Mac specific settings to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 672
diff changeset
20 #elif defined(__MAC__)
746
0a364e76a7aa 9 point Monaco looks better than 8 point... so switching in dwtest...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 674
diff changeset
21 #define FIXEDFONT "9.Monaco"
674
78f9aa6d6d89 Fixes or fonts and loading images from files. Added Mac specific settings to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 672
diff changeset
22 #define FOLDER_ICON_NAME "mac/folder"
78f9aa6d6d89 Fixes or fonts and loading images from files. Added Mac specific settings to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 672
diff changeset
23 #define FILE_ICON_NAME "mac/file"
219
79968cf0f3b3 Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 218
diff changeset
24 #elif GTK_MAJOR_VERSION > 1
1002
0802d6122ec7 Changes to the test program to use new font style for GTK2+.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 992
diff changeset
25 #define FIXEDFONT "10.monospace"
297
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
26 #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
27 #define FILE_ICON_NAME "gtk/file"
219
79968cf0f3b3 Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 218
diff changeset
28 #else
79968cf0f3b3 Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 218
diff changeset
29 #define FIXEDFONT "fixed"
297
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
30 #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
31 #define FILE_ICON_NAME "gtk/file"
219
79968cf0f3b3 Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 218
diff changeset
32 #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
33
774
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
34 #define MAX_WIDGETS 20
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
35
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
36 unsigned long flStyle = DW_FCF_SYSMENU | DW_FCF_TITLEBAR |
1484
9b24233d7606 Remove obsolete DW_FCF_SHELLPOSITION from the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1465
diff changeset
37 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
38
567
81ca08481d49 Added the basics of the color chooser on OS/2. Needs some more logic to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 566
diff changeset
39 unsigned long current_color = DW_RGB(100,100,100);
566
f6de197ecbe9 Add dw_color_choose()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 531
diff changeset
40
602
489a684af1bb Add some more test
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 600
diff changeset
41 int iteration = 0;
774
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
42 void create_button( int);
503
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
43
1090
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
44 static char folder_ico[1718] = {
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
45 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x01, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x05, 0x00, 0x00, 0x4E, 0x01, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x01, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
46 0x80, 0x00, 0x80, 0x80, 0x00, 0x00, 0xC0, 0xC0, 0xC0, 0x00, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x30, 0x03, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x3B, 0x37, 0x77, 0x77, 0x77, 0x77, 0xB7, 0x33, 0x3B, 0x37, 0x77, 0x77, 0x77, 0x77, 0xB7, 0x33, 0x3B, 0x37, 0x77, 0x77, 0x77, 0x77, 0xB7, 0x33, 0x3B, 0x37,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
47 0x77, 0x77, 0x77, 0x77, 0xB7, 0x33, 0x37, 0x37, 0x77, 0x77, 0x77, 0x77, 0xB7, 0x33, 0x37, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x33, 0x37, 0x73, 0x33, 0x33, 0x33, 0x33, 0x33, 0x30, 0x37, 0x77, 0x77, 0x7F, 0xFF, 0xFF, 0x30, 0x00, 0x3F, 0x77, 0x77, 0xF3, 0x33, 0x33, 0x30, 0x00, 0x03, 0xFF, 0xFF, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xC0, 0x01, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
48 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x81, 0xFF, 0x00, 0x00, 0xC3, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x01, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x80,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
49 0x00, 0x00, 0xC0, 0xC0, 0xC0, 0x00, 0xC0, 0xDC, 0xC0, 0x00, 0xF0, 0xCA, 0xA6, 0x00, 0x04, 0x04, 0x04, 0x00, 0x08, 0x08, 0x08, 0x00, 0x0C, 0x0C, 0x0C, 0x00, 0x11, 0x11, 0x11, 0x00, 0x16, 0x16, 0x16, 0x00, 0x1C, 0x1C, 0x1C, 0x00, 0x22, 0x22, 0x22, 0x00, 0x29, 0x29, 0x29, 0x00, 0x55, 0x55, 0x55, 0x00, 0x4D, 0x4D, 0x4D, 0x00, 0x42, 0x42, 0x42, 0x00, 0x39, 0x39, 0x39, 0x00, 0x80, 0x7C, 0xFF, 0x00, 0x50, 0x50, 0xFF, 0x00, 0x93, 0x00, 0xD6, 0x00, 0xFF, 0xEC, 0xCC, 0x00, 0xC6, 0xD6, 0xEF, 0x00, 0xD6, 0xE7, 0xE7, 0x00, 0x90, 0xA9, 0xAD, 0x00, 0x00, 0x00, 0x33, 0x00, 0x00, 0x00, 0x66, 0x00, 0x00, 0x00,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
50 0x99, 0x00, 0x00, 0x00, 0xCC, 0x00, 0x00, 0x33, 0x00, 0x00, 0x00, 0x33, 0x33, 0x00, 0x00, 0x33, 0x66, 0x00, 0x00, 0x33, 0x99, 0x00, 0x00, 0x33, 0xCC, 0x00, 0x00, 0x33, 0xFF, 0x00, 0x00, 0x66, 0x00, 0x00, 0x00, 0x66, 0x33, 0x00, 0x00, 0x66, 0x66, 0x00, 0x00, 0x66, 0x99, 0x00, 0x00, 0x66, 0xCC, 0x00, 0x00, 0x66, 0xFF, 0x00, 0x00, 0x99, 0x00, 0x00, 0x00, 0x99, 0x33, 0x00, 0x00, 0x99, 0x66, 0x00, 0x00, 0x99, 0x99, 0x00, 0x00, 0x99, 0xCC, 0x00, 0x00, 0x99, 0xFF, 0x00, 0x00, 0xCC, 0x00, 0x00, 0x00, 0xCC, 0x33, 0x00, 0x00, 0xCC, 0x66, 0x00, 0x00, 0xCC, 0x99, 0x00, 0x00, 0xCC, 0xCC, 0x00, 0x00, 0xCC,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
51 0xFF, 0x00, 0x00, 0xFF, 0x66, 0x00, 0x00, 0xFF, 0x99, 0x00, 0x00, 0xFF, 0xCC, 0x00, 0x33, 0x00, 0x00, 0x00, 0x33, 0x00, 0x33, 0x00, 0x33, 0x00, 0x66, 0x00, 0x33, 0x00, 0x99, 0x00, 0x33, 0x00, 0xCC, 0x00, 0x33, 0x00, 0xFF, 0x00, 0x33, 0x33, 0x00, 0x00, 0x33, 0x33, 0x33, 0x00, 0x33, 0x33, 0x66, 0x00, 0x33, 0x33, 0x99, 0x00, 0x33, 0x33, 0xCC, 0x00, 0x33, 0x33, 0xFF, 0x00, 0x33, 0x66, 0x00, 0x00, 0x33, 0x66, 0x33, 0x00, 0x33, 0x66, 0x66, 0x00, 0x33, 0x66, 0x99, 0x00, 0x33, 0x66, 0xCC, 0x00, 0x33, 0x66, 0xFF, 0x00, 0x33, 0x99, 0x00, 0x00, 0x33, 0x99, 0x33, 0x00, 0x33, 0x99, 0x66, 0x00, 0x33, 0x99,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
52 0x99, 0x00, 0x33, 0x99, 0xCC, 0x00, 0x33, 0x99, 0xFF, 0x00, 0x33, 0xCC, 0x00, 0x00, 0x33, 0xCC, 0x33, 0x00, 0x33, 0xCC, 0x66, 0x00, 0x33, 0xCC, 0x99, 0x00, 0x33, 0xCC, 0xCC, 0x00, 0x33, 0xCC, 0xFF, 0x00, 0x33, 0xFF, 0x33, 0x00, 0x33, 0xFF, 0x66, 0x00, 0x33, 0xFF, 0x99, 0x00, 0x33, 0xFF, 0xCC, 0x00, 0x33, 0xFF, 0xFF, 0x00, 0x66, 0x00, 0x00, 0x00, 0x66, 0x00, 0x33, 0x00, 0x66, 0x00, 0x66, 0x00, 0x66, 0x00, 0x99, 0x00, 0x66, 0x00, 0xCC, 0x00, 0x66, 0x00, 0xFF, 0x00, 0x66, 0x33, 0x00, 0x00, 0x66, 0x33, 0x33, 0x00, 0x66, 0x33, 0x66, 0x00, 0x66, 0x33, 0x99, 0x00, 0x66, 0x33, 0xCC, 0x00, 0x66, 0x33,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
53 0xFF, 0x00, 0x66, 0x66, 0x00, 0x00, 0x66, 0x66, 0x33, 0x00, 0x66, 0x66, 0x66, 0x00, 0x66, 0x66, 0x99, 0x00, 0x66, 0x66, 0xCC, 0x00, 0x66, 0x99, 0x00, 0x00, 0x66, 0x99, 0x33, 0x00, 0x66, 0x99, 0x66, 0x00, 0x66, 0x99, 0x99, 0x00, 0x66, 0x99, 0xCC, 0x00, 0x66, 0x99, 0xFF, 0x00, 0x66, 0xCC, 0x00, 0x00, 0x66, 0xCC, 0x33, 0x00, 0x66, 0xCC, 0x99, 0x00, 0x66, 0xCC, 0xCC, 0x00, 0x66, 0xCC, 0xFF, 0x00, 0x66, 0xFF, 0x00, 0x00, 0x66, 0xFF, 0x33, 0x00, 0x66, 0xFF, 0x99, 0x00, 0x66, 0xFF, 0xCC, 0x00, 0xCC, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xCC, 0x00, 0x99, 0x99, 0x00, 0x00, 0x99, 0x33, 0x99, 0x00, 0x99, 0x00,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
54 0x99, 0x00, 0x99, 0x00, 0xCC, 0x00, 0x99, 0x00, 0x00, 0x00, 0x99, 0x33, 0x33, 0x00, 0x99, 0x00, 0x66, 0x00, 0x99, 0x33, 0xCC, 0x00, 0x99, 0x00, 0xFF, 0x00, 0x99, 0x66, 0x00, 0x00, 0x99, 0x66, 0x33, 0x00, 0x99, 0x33, 0x66, 0x00, 0x99, 0x66, 0x99, 0x00, 0x99, 0x66, 0xCC, 0x00, 0x99, 0x33, 0xFF, 0x00, 0x99, 0x99, 0x33, 0x00, 0x99, 0x99, 0x66, 0x00, 0x99, 0x99, 0x99, 0x00, 0x99, 0x99, 0xCC, 0x00, 0x99, 0x99, 0xFF, 0x00, 0x99, 0xCC, 0x00, 0x00, 0x99, 0xCC, 0x33, 0x00, 0x66, 0xCC, 0x66, 0x00, 0x99, 0xCC, 0x99, 0x00, 0x99, 0xCC, 0xCC, 0x00, 0x99, 0xCC, 0xFF, 0x00, 0x99, 0xFF, 0x00, 0x00, 0x99, 0xFF,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
55 0x33, 0x00, 0x99, 0xCC, 0x66, 0x00, 0x99, 0xFF, 0x99, 0x00, 0x99, 0xFF, 0xCC, 0x00, 0x99, 0xFF, 0xFF, 0x00, 0xCC, 0x00, 0x00, 0x00, 0x99, 0x00, 0x33, 0x00, 0xCC, 0x00, 0x66, 0x00, 0xCC, 0x00, 0x99, 0x00, 0xCC, 0x00, 0xCC, 0x00, 0x99, 0x33, 0x00, 0x00, 0xCC, 0x33, 0x33, 0x00, 0xCC, 0x33, 0x66, 0x00, 0xCC, 0x33, 0x99, 0x00, 0xCC, 0x33, 0xCC, 0x00, 0xCC, 0x33, 0xFF, 0x00, 0xCC, 0x66, 0x00, 0x00, 0xCC, 0x66, 0x33, 0x00, 0x99, 0x66, 0x66, 0x00, 0xCC, 0x66, 0x99, 0x00, 0xCC, 0x66, 0xCC, 0x00, 0x99, 0x66, 0xFF, 0x00, 0xCC, 0x99, 0x00, 0x00, 0xCC, 0x99, 0x33, 0x00, 0xCC, 0x99, 0x66, 0x00, 0xCC, 0x99,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
56 0x99, 0x00, 0xCC, 0x99, 0xCC, 0x00, 0xCC, 0x99, 0xFF, 0x00, 0xCC, 0xCC, 0x00, 0x00, 0xCC, 0xCC, 0x33, 0x00, 0xCC, 0xCC, 0x66, 0x00, 0xCC, 0xCC, 0x99, 0x00, 0xCC, 0xCC, 0xCC, 0x00, 0xCC, 0xCC, 0xFF, 0x00, 0xCC, 0xFF, 0x00, 0x00, 0xCC, 0xFF, 0x33, 0x00, 0x99, 0xFF, 0x66, 0x00, 0xCC, 0xFF, 0x99, 0x00, 0xCC, 0xFF, 0xCC, 0x00, 0xCC, 0xFF, 0xFF, 0x00, 0xCC, 0x00, 0x33, 0x00, 0xFF, 0x00, 0x66, 0x00, 0xFF, 0x00, 0x99, 0x00, 0xCC, 0x33, 0x00, 0x00, 0xFF, 0x33, 0x33, 0x00, 0xFF, 0x33, 0x66, 0x00, 0xFF, 0x33, 0x99, 0x00, 0xFF, 0x33, 0xCC, 0x00, 0xFF, 0x33, 0xFF, 0x00, 0xFF, 0x66, 0x00, 0x00, 0xFF, 0x66,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
57 0x33, 0x00, 0xCC, 0x66, 0x66, 0x00, 0xFF, 0x66, 0x99, 0x00, 0xFF, 0x66, 0xCC, 0x00, 0xCC, 0x66, 0xFF, 0x00, 0xFF, 0x99, 0x00, 0x00, 0xFF, 0x99, 0x33, 0x00, 0xFF, 0x99, 0x66, 0x00, 0xFF, 0x99, 0x99, 0x00, 0xFF, 0x99, 0xCC, 0x00, 0xFF, 0x99, 0xFF, 0x00, 0xFF, 0xCC, 0x00, 0x00, 0xFF, 0xCC, 0x33, 0x00, 0xFF, 0xCC, 0x66, 0x00, 0xFF, 0xCC, 0x99, 0x00, 0xFF, 0xCC, 0xCC, 0x00, 0xFF, 0xCC, 0xFF, 0x00, 0xFF, 0xFF, 0x33, 0x00, 0xCC, 0xFF, 0x66, 0x00, 0xFF, 0xFF, 0x99, 0x00, 0xFF, 0xFF, 0xCC, 0x00, 0x66, 0x66, 0xFF, 0x00, 0x66, 0xFF, 0x66, 0x00, 0x66, 0xFF, 0xFF, 0x00, 0xFF, 0x66, 0x66, 0x00, 0xFF, 0x66,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
58 0xFF, 0x00, 0xFF, 0xFF, 0x66, 0x00, 0x21, 0x00, 0xA5, 0x00, 0x5F, 0x5F, 0x5F, 0x00, 0x77, 0x77, 0x77, 0x00, 0x86, 0x86, 0x86, 0x00, 0x96, 0x96, 0x96, 0x00, 0xCB, 0xCB, 0xCB, 0x00, 0xB2, 0xB2, 0xB2, 0x00, 0xD7, 0xD7, 0xD7, 0x00, 0xDD, 0xDD, 0xDD, 0x00, 0xE3, 0xE3, 0xE3, 0x00, 0xEA, 0xEA, 0xEA, 0x00, 0xF1, 0xF1, 0xF1, 0x00, 0xF8, 0xF8, 0xF8, 0x00, 0xF0, 0xFB, 0xFF, 0x00, 0xA4, 0xA0, 0xA0, 0x00, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x0A, 0x0A,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
59 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x4B, 0x4B, 0x4B, 0x4B, 0x4B, 0x4B, 0x4B, 0x4B, 0x4B, 0x4B, 0x4B, 0x4B, 0x4B, 0x0A, 0x0A, 0x52, 0x52, 0x52, 0x52, 0x52, 0x52, 0x52, 0x52, 0x52, 0x52, 0x52, 0x52, 0x52, 0x52, 0x4B, 0x52, 0x7A, 0x52, 0xA0, 0x7A, 0x7A, 0x7A, 0x7A, 0x7A, 0x7A, 0x7A, 0x7A, 0x58, 0xA0, 0x52, 0x4B, 0x52, 0x7A, 0x52, 0xA0, 0x7A, 0x7A, 0x7A, 0x7A, 0x7A, 0x7A, 0x7A, 0x7A, 0x58, 0xA0, 0x52, 0x4B, 0x52, 0x7A, 0x52, 0xA0, 0x9A, 0x9A,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
60 0x9A, 0x9A, 0x9A, 0x9A, 0x9A, 0xA0, 0x58, 0xA0, 0x52, 0x4B, 0x52, 0x7A, 0x52, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0x79, 0xA0, 0x52, 0x4B, 0x52, 0x7A, 0x52, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0x7A, 0xA0, 0x52, 0x4B, 0x52, 0x7A, 0x52, 0xFF, 0xF6, 0xF6, 0xF6, 0xF6, 0xF6, 0xFF, 0xFF, 0xFF, 0x9A, 0xF6, 0x52, 0x4B, 0x52, 0xA0, 0x9A, 0x52, 0x52, 0x52, 0x52, 0x52, 0x52, 0x52, 0x52, 0x52, 0x52, 0x52, 0x52, 0x0A, 0x52, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x2A, 0x0A, 0x0A, 0x0A, 0x52, 0xFF, 0xA0, 0xA0, 0xA0, 0xA0, 0xFF, 0x52, 0x52, 0x52,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
61 0x52, 0x52, 0x2A, 0x0A, 0x0A, 0x0A, 0x0A, 0x52, 0xFF, 0xFF, 0xFF, 0xF6, 0x52, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x52, 0x52, 0x52, 0x52, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xC0, 0x01, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x07,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
62 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x81, 0xFF, 0x00, 0x00, 0xC3, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
63 };
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
64
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
65 HWND mainwindow,
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
66 entryfield,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
67 checkable_menuitem,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
68 noncheckable_menuitem,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
69 cursortogglebutton,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
70 colorchoosebutton,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
71 okbutton,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
72 cancelbutton,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
73 lbbox,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
74 combox,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
75 combobox1,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
76 combobox2,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
77 spinbutton,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
78 slider,
1190
76262040ed5f Added DW_PERCENT_INDETERMINATE which can be passed to dw_percent_set_pos() to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1186
diff changeset
79 percent,
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
80 notebookbox,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
81 notebookbox1,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
82 notebookbox2,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
83 notebookbox3,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
84 notebookbox4,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
85 notebookbox5,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
86 notebookbox6,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
87 notebookbox7,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
88 notebookbox8,
1200
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
89 notebookbox9,
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
90 html,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
91 rawhtml,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
92 notebook,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
93 vscrollbar,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
94 hscrollbar,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
95 status1,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
96 status2,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
97 rendcombo,
957
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
98 imagexspin,
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
99 imageyspin,
1243
c191a562c14a Added new dw_pixmap_stretch_bitblt() function on Windows and OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1242
diff changeset
100 imagestretchcheck,
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
101 container_status,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
102 tree_status,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
103 stext,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
104 tree,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
105 container,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
106 container_mle,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
107 pagebox,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
108 containerbox,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
109 textbox1, textbox2, textboxA,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
110 gap_box,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
111 buttonbox,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
112 buttonsbox,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
113 buttonboxperm,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
114 cal,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
115 scrollbox,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
116 labelarray[MAX_WIDGETS],
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
117 entryarray[MAX_WIDGETS],
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
118 filetoolbarbox;
620
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
119
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
120 HMENUI mainmenubar,changeable_menu;
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
121 #define CHECKABLE_MENUITEMID 2001
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
122 #define NONCHECKABLE_MENUITEMID 2002
503
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
123
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
124 void *containerinfo;
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
125
620
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
126
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
127 int menu_enabled = 1;
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
128
957
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
129 HPIXMAP text1pm,text2pm,image;
672
388f2a48aaae Missed one function to typedef. Fixed errors in the test program and switched to using
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 643
diff changeset
130 HICN fileicon,foldericon;
388f2a48aaae Missed one function to typedef. Fixed errors in the test program and switched to using
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 643
diff changeset
131 int mle_point=-1;
1243
c191a562c14a Added new dw_pixmap_stretch_bitblt() function on Windows and OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1242
diff changeset
132 int image_x = 20, image_y = 20, image_stretch = 0;
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
133
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
134 int font_width = 8;
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
135 int font_height=12;
1002
0802d6122ec7 Changes to the test program to use new font style for GTK2+.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 992
diff changeset
136 int rows=10,width1=6,cols=80;
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
137 char *current_file = NULL;
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
138 int timerid;
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
139 int num_lines=0;
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
140 int max_linewidth=0;
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
141 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
142 int cursor_arrow = 1;
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
143 int render_type = 0;
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
144
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
145 FILE *fp=NULL;
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
146 char **lp;
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
147
297
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
148 char *resolve_keyname( int vk )
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
149 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
150 char *keyname;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
151 switch(vk)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
152 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
153 case VK_LBUTTON : keyname = "VK_LBUTTON"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
154 case VK_RBUTTON : keyname = "VK_RBUTTON"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
155 case VK_CANCEL : keyname = "VK_CANCEL"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
156 case VK_MBUTTON : keyname = "VK_MBUTTON"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
157 /* case VK_BACK : keyname = "VK_BACK"; break;*/
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
158 case VK_TAB : keyname = "VK_TAB"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
159 case VK_CLEAR : keyname = "VK_CLEAR"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
160 case VK_RETURN : keyname = "VK_RETURN"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
161 /* case VK_MENU : keyname = "VK_MENU"; break;*/
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
162 case VK_PAUSE : keyname = "VK_PAUSE"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
163 case VK_CAPITAL : keyname = "VK_CAPITAL"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
164 case VK_ESCAPE : keyname = "VK_ESCAPE"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
165 case VK_SPACE : keyname = "VK_SPACE"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
166 case VK_PRIOR : keyname = "VK_PRIOR"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
167 case VK_NEXT : keyname = "VK_NEXT"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
168 case VK_END : keyname = "VK_END"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
169 case VK_HOME : keyname = "VK_HOME"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
170 case VK_LEFT : keyname = "VK_LEFT"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
171 case VK_UP : keyname = "VK_UP"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
172 case VK_RIGHT : keyname = "VK_RIGHT"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
173 case VK_DOWN : keyname = "VK_DOWN"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
174 case VK_SELECT : keyname = "VK_SELECT"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
175 case VK_PRINT : keyname = "VK_PRINT"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
176 case VK_EXECUTE : keyname = "VK_EXECUTE"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
177 case VK_SNAPSHOT: keyname = "VK_SNAPSHOT"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
178 case VK_INSERT : keyname = "VK_INSERT"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
179 case VK_DELETE : keyname = "VK_DELETE"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
180 case VK_HELP : keyname = "VK_HELP"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
181 case VK_LWIN : keyname = "VK_LWIN"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
182 case VK_RWIN : keyname = "VK_RWIN"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
183 case VK_NUMPAD0 : keyname = "VK_NUMPAD0"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
184 case VK_NUMPAD1 : keyname = "VK_NUMPAD1"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
185 case VK_NUMPAD2 : keyname = "VK_NUMPAD2"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
186 case VK_NUMPAD3 : keyname = "VK_NUMPAD3"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
187 case VK_NUMPAD4 : keyname = "VK_NUMPAD4"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
188 case VK_NUMPAD5 : keyname = "VK_NUMPAD5"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
189 case VK_NUMPAD6 : keyname = "VK_NUMPAD6"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
190 case VK_NUMPAD7 : keyname = "VK_NUMPAD7"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
191 case VK_NUMPAD8 : keyname = "VK_NUMPAD8"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
192 case VK_NUMPAD9 : keyname = "VK_NUMPAD9"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
193 case VK_MULTIPLY: keyname = "VK_MULTIPLY"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
194 case VK_ADD : keyname = "VK_ADD"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
195 case VK_SEPARATOR: keyname = "VK_SEPARATOR"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
196 case VK_SUBTRACT: keyname = "VK_SUBTRACT"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
197 case VK_DECIMAL : keyname = "VK_DECIMAL"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
198 case VK_DIVIDE : keyname = "VK_DIVIDE"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
199 case VK_F1 : keyname = "VK_F1"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
200 case VK_F2 : keyname = "VK_F2"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
201 case VK_F3 : keyname = "VK_F3"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
202 case VK_F4 : keyname = "VK_F4"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
203 case VK_F5 : keyname = "VK_F5"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
204 case VK_F6 : keyname = "VK_F6"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
205 case VK_F7 : keyname = "VK_F7"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
206 case VK_F8 : keyname = "VK_F8"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
207 case VK_F9 : keyname = "VK_F9"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
208 case VK_F10 : keyname = "VK_F10"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
209 case VK_F11 : keyname = "VK_F11"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
210 case VK_F12 : keyname = "VK_F12"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
211 case VK_F13 : keyname = "VK_F13"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
212 case VK_F14 : keyname = "VK_F14"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
213 case VK_F15 : keyname = "VK_F15"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
214 case VK_F16 : keyname = "VK_F16"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
215 case VK_F17 : keyname = "VK_F17"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
216 case VK_F18 : keyname = "VK_F18"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
217 case VK_F19 : keyname = "VK_F19"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
218 case VK_F20 : keyname = "VK_F20"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
219 case VK_F21 : keyname = "VK_F21"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
220 case VK_F22 : keyname = "VK_F22"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
221 case VK_F23 : keyname = "VK_F23"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
222 case VK_F24 : keyname = "VK_F24"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
223 case VK_NUMLOCK : keyname = "VK_NUMLOCK"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
224 case VK_SCROLL : keyname = "VK_SCROLL"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
225 case VK_LSHIFT : keyname = "VK_LSHIFT"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
226 case VK_RSHIFT : keyname = "VK_RSHIFT"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
227 case VK_LCONTROL: keyname = "VK_LCONTROL"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
228 case VK_RCONTROL: keyname = "VK_RCONTROL"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
229 /* case VK_LMENU : keyname = "VK_LMENU"; break; */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
230 /* case VK_RMENU : keyname = "VK_RMENU"; break;*/
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
231 default: keyname = "<unknown>"; break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
232 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
233 return keyname;
297
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
234 }
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
235
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
236 char *resolve_keymodifiers( int mask )
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
237 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
238 if ( (mask & KC_CTRL) && (mask & KC_SHIFT) && (mask & KC_ALT) )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
239 return "KC_CTRL KC_SHIFT KC_ALT";
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
240 else if ( (mask & KC_CTRL) && (mask & KC_SHIFT) )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
241 return "KC_CTRL KC_SHIFT";
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
242 else if ( (mask & KC_CTRL) && (mask & KC_ALT) )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
243 return "KC_CTRL KC_ALT";
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
244 else if ( (mask & KC_SHIFT) && (mask & KC_ALT) )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
245 return "KC_SHIFT KC_ALT";
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
246 else if ( (mask & KC_SHIFT) )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
247 return "KC_SHIFT";
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
248 else if ( (mask & KC_CTRL) )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
249 return "KC_CTRL";
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
250 else if ( (mask & KC_ALT) )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
251 return "KC_ALT";
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
252 else return "none";
297
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
253 }
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
254
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
255 void update_render(void);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
256
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
257 /* 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
258 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
259 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
260 if(render_type != 1)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
261 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
262 HPIXMAP hpm;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
263 unsigned long width,height;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
264
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
265 if ( hwnd == textbox1 )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
266 hpm = text1pm;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
267 else if ( hwnd == textbox2 )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
268 hpm = text2pm;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
269 else
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
270 return TRUE;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
271
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
272 width = (int)DW_PIXMAP_WIDTH(hpm);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
273 height = (int)DW_PIXMAP_HEIGHT(hpm);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
274
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
275 dw_pixmap_bitblt(hwnd, NULL, 0, 0, (int)width, (int)height, 0, hpm, 0, 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
276 dw_flush();
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
277 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
278 else
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
279 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
280 update_render();
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
281 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
282 return TRUE;
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
283 }
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
284
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
285 void read_file( void )
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
286 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
287 int i,len;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
288 fp = fopen( current_file, "r" );
1090
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
289 if ( fp )
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
290 {
1090
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
291 lp = (char **)calloc( 1000,sizeof(char *));
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
292 /* should test for out of memory */
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
293 max_linewidth=0;
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
294 for ( i = 0; i < 1000; i++ )
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
295 {
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
296 lp[i] = (char *)calloc(1, 1025);
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
297 if ( fgets( lp[i], 1024, fp ) == NULL )
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
298 break;
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
299 len = (int)strlen( lp[i] );
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
300 if ( len > max_linewidth )
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
301 max_linewidth = len;
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
302 if ( lp[i][len - 1] == '\n' )
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
303 lp[i][len - 1] = '\0';
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
304 }
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
305 num_lines = i;
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
306 fclose( fp );
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
307 dw_scrollbar_set_range(hscrollbar, max_linewidth, cols);
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
308 dw_scrollbar_set_pos(hscrollbar, 0);
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
309 dw_scrollbar_set_range(vscrollbar, num_lines, rows);
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
310 dw_scrollbar_set_pos(vscrollbar, 0);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
311 }
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
312 }
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
313
1230
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
314 /* When hpma is not NULL we are printing.. so handle things differently */
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
315 void draw_file( int row, int col, int nrows, int fheight, HPIXMAP hpma )
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
316 {
1230
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
317 HPIXMAP hpm = hpma ? hpma : text2pm;
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
318 char buf[10];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
319 int i,y,fileline;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
320 char *pLine;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
321
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
322 if ( current_file )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
323 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
324 dw_color_foreground_set(DW_CLR_WHITE);
1230
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
325 if(!hpma)
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
326 dw_draw_rect(0, text1pm, TRUE, 0, 0, (int)DW_PIXMAP_WIDTH(text1pm), (int)DW_PIXMAP_HEIGHT(text1pm));
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
327 dw_draw_rect(0, hpm, TRUE, 0, 0, (int)DW_PIXMAP_WIDTH(hpm), (int)DW_PIXMAP_HEIGHT(hpm));
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
328
1230
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
329 for ( i = 0;(i < nrows) && (i+row < num_lines); i++)
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
330 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
331 fileline = i + row - 1;
1230
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
332 y = i*fheight;
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
333 dw_color_background_set( 1 + (fileline % 15) );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
334 dw_color_foreground_set( fileline < 0 ? DW_CLR_WHITE : fileline % 16 );
1230
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
335 if(!hpma)
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
336 {
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
337 sprintf( buf, "%6.6d", i+row );
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
338 dw_draw_text( 0, text1pm, 0, y, buf);
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
339 }
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
340 pLine = lp[i+row];
1230
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
341 dw_draw_text( 0, hpm, 0, y, pLine+col );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
342 }
1230
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
343 if(!hpma)
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
344 {
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
345 text_expose( textbox1, NULL, NULL);
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
346 text_expose( textbox2, NULL, NULL);
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
347 }
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
348 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
349 }
380
fcb52d773ed2 Implement tests for setting background color on render boxes.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 378
diff changeset
350
1230
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
351 /* When hpma is not NULL we are printing.. so handle things differently */
1137
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
352 void draw_shapes(int direct, HPIXMAP hpma)
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
353 {
1137
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
354 HPIXMAP hpm = hpma ? hpma : text2pm;
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
355 int width = (int)DW_PIXMAP_WIDTH(hpm), height = (int)DW_PIXMAP_HEIGHT(hpm);
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
356 HPIXMAP pixmap = direct ? NULL : hpm;
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
357 HWND window = direct ? textbox2 : 0;
1259
2d2b945ee0bf Added a polygon to the test code to make sure that works on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1243
diff changeset
358 int x[7] = { 20, 180, 180, 230, 180, 180, 20 };
2d2b945ee0bf Added a polygon to the test code to make sure that works on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1243
diff changeset
359 int y[7] = { 50, 50, 20, 70, 120, 90, 90 };
2d2b945ee0bf Added a polygon to the test code to make sure that works on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1243
diff changeset
360
957
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
361 image_x = (int)dw_spinbutton_get_pos(imagexspin);
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
362 image_y = (int)dw_spinbutton_get_pos(imageyspin);
1243
c191a562c14a Added new dw_pixmap_stretch_bitblt() function on Windows and OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1242
diff changeset
363 image_stretch = dw_checkbox_get(imagestretchcheck);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
364
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
365 dw_color_foreground_set(DW_CLR_WHITE);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
366 dw_draw_rect(window, pixmap, TRUE, 0, 0, width, height);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
367 dw_color_foreground_set(DW_CLR_DARKPINK);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
368 dw_draw_rect(window, pixmap, TRUE, 10, 10, width - 20, height - 20);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
369 dw_color_foreground_set(DW_CLR_GREEN);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
370 dw_color_background_set(DW_CLR_DARKRED);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
371 dw_draw_text(window, pixmap, 10, 10, "This should be aligned with the edges.");
1259
2d2b945ee0bf Added a polygon to the test code to make sure that works on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1243
diff changeset
372 dw_color_foreground_set(DW_CLR_BLUE);
2d2b945ee0bf Added a polygon to the test code to make sure that works on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1243
diff changeset
373 dw_draw_polygon(window, pixmap, TRUE, 7, x, y);
1280
70efdb4e0ce9 Draw a rectangle behind the circle to make sure it fits inside.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1270
diff changeset
374 dw_color_foreground_set(DW_CLR_BLACK);
1282
4f0f816f1e76 Update to draw as an ellipse and fix for circles on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1280
diff changeset
375 dw_draw_rect(window, pixmap, DW_DRAW_FILL, 80, 80, 80, 40);
1261
61d0c5f84644 Initial attempt at adding dw_draw_arc() support on all platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1259
diff changeset
376 dw_color_foreground_set(DW_CLR_CYAN);
1269
9e477efbacca Added DW_DRAW_DEFAULT, DW_DRAW_FILL and DW_DRAW_FULL drawing flags.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1266
diff changeset
377 /* Bottom right corner */
1266
83b0ed8c8377 Fixed on GTK passing angles to cairo in degrees instead of radians.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1261
diff changeset
378 dw_draw_arc(window, pixmap, 0, width - 30, height - 30, width - 10, height - 30, width - 30, height - 10);
1269
9e477efbacca Added DW_DRAW_DEFAULT, DW_DRAW_FILL and DW_DRAW_FULL drawing flags.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1266
diff changeset
379 /* Top right corner */
9e477efbacca Added DW_DRAW_DEFAULT, DW_DRAW_FILL and DW_DRAW_FULL drawing flags.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1266
diff changeset
380 dw_draw_arc(window, pixmap, 0, width - 30, 30, width - 30, 10, width - 10, 30);
9e477efbacca Added DW_DRAW_DEFAULT, DW_DRAW_FILL and DW_DRAW_FULL drawing flags.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1266
diff changeset
381 /* Bottom left corner */
9e477efbacca Added DW_DRAW_DEFAULT, DW_DRAW_FILL and DW_DRAW_FULL drawing flags.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1266
diff changeset
382 dw_draw_arc(window, pixmap, 0, 30, height - 30, 30, height - 10, 10, height - 30);
9e477efbacca Added DW_DRAW_DEFAULT, DW_DRAW_FILL and DW_DRAW_FULL drawing flags.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1266
diff changeset
383 /* Full circle in the left top area */
1282
4f0f816f1e76 Update to draw as an ellipse and fix for circles on OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1280
diff changeset
384 dw_draw_arc(window, pixmap, DW_DRAW_FULL, 120, 100, 80, 80, 160, 120);
957
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
385 if(image)
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
386 {
1243
c191a562c14a Added new dw_pixmap_stretch_bitblt() function on Windows and OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1242
diff changeset
387 if(image_stretch)
c191a562c14a Added new dw_pixmap_stretch_bitblt() function on Windows and OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1242
diff changeset
388 dw_pixmap_stretch_bitblt(window, pixmap, 10, 10, width - 20, height - 20, 0, image, 0, 0, (int)DW_PIXMAP_WIDTH(image), (int)DW_PIXMAP_HEIGHT(image));
c191a562c14a Added new dw_pixmap_stretch_bitblt() function on Windows and OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1242
diff changeset
389 else
c191a562c14a Added new dw_pixmap_stretch_bitblt() function on Windows and OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1242
diff changeset
390 dw_pixmap_bitblt(window, pixmap, image_x, image_y, (int)DW_PIXMAP_WIDTH(image), (int)DW_PIXMAP_HEIGHT(image), 0, image, 0, 0);
957
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
391 }
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
392
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
393 /* If we aren't drawing direct do a bitblt */
1137
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
394 if(!direct && !hpma)
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
395 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
396 text_expose( textbox2, NULL, NULL);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
397 }
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
398 }
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
399
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
400 void update_render(void)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
401 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
402 switch(render_type)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
403 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
404 case 0:
1137
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
405 draw_shapes(FALSE, NULL);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
406 break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
407 case 1:
1137
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
408 draw_shapes(TRUE, NULL);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
409 break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
410 case 2:
1230
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
411 draw_file(current_row, current_col, rows, font_height, NULL);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
412 break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
413 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
414 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
415
1137
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
416 int DWSIGNAL draw_page(HPRINT print, HPIXMAP pixmap, int page_num, void *data)
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
417 {
1146
9d97610b2140 Adding dw_pixmap_set_font() which is equivalent to dw_window_set_font() except for pixmaps.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1142
diff changeset
418 dw_pixmap_set_font(pixmap, FIXEDFONT);
1230
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
419 if(page_num == 0)
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
420 {
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
421 draw_shapes(FALSE, pixmap);
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
422 }
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
423 else if(page_num == 1)
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
424 {
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
425 /* Get the font size for this printer context... */
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
426 int fheight, fwidth;
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
427
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
428 /* If we have a file to display... */
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
429 if(current_file)
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
430 {
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
431 int nrows;
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
432
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
433 /* Calculate new dimensions */
1343
d4c874f13e9b More fixes for OS/2 gcc/gmake. Need to use := to evaluate the $(shell) variable.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1319
diff changeset
434 dw_font_text_extents_get(0, pixmap, "(g", NULL, &fheight);
1230
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
435 nrows = (int)(DW_PIXMAP_HEIGHT(pixmap) / fheight);
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
436
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
437 /* Do the actual drawing */
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
438 draw_file(0, 0, nrows, fheight, pixmap);
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
439 }
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
440 else
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
441 {
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
442 /* We don't have a file so center an error message on the page */
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
443 char *text = "No file currently selected!";
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
444 int posx, posy;
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
445
1343
d4c874f13e9b More fixes for OS/2 gcc/gmake. Need to use := to evaluate the $(shell) variable.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1319
diff changeset
446 dw_font_text_extents_get(0, pixmap, text, &fwidth, &fheight);
1230
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
447
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
448 posx = (int)(DW_PIXMAP_WIDTH(pixmap) - fwidth)/2;
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
449 posy = (int)(DW_PIXMAP_HEIGHT(pixmap) - fheight)/2;
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
450
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
451 dw_color_foreground_set(DW_CLR_BLACK);
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
452 dw_color_background_set(DW_CLR_WHITE);
1343
d4c874f13e9b More fixes for OS/2 gcc/gmake. Need to use := to evaluate the $(shell) variable.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1319
diff changeset
453 dw_draw_text(0, pixmap, posx, posy, text);
1230
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
454 }
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
455 }
1137
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
456 return TRUE;
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
457 }
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
458
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
459 int DWSIGNAL print_callback(HWND window, void *data)
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
460 {
1230
75a773cdb626 Fixes to dw_font_text_extents_get() on Mac so it honors the font set with dw_pixmap_set_font().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1227
diff changeset
461 HPRINT print = dw_print_new("DWTest Job", 0, 2, DW_SIGNAL_FUNC(draw_page), NULL);
1137
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
462 dw_print_run(print, 0);
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
463 return FALSE;
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
464 }
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
465
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
466 int DWSIGNAL refresh_callback(HWND window, void *data)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
467 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
468 update_render();
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
469 return FALSE;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
470 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
471
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
472 int DWSIGNAL render_select_event_callback(HWND window, int index)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
473 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
474 if(index != render_type)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
475 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
476 if(index == 2)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
477 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
478 dw_scrollbar_set_range(hscrollbar, max_linewidth, cols);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
479 dw_scrollbar_set_pos(hscrollbar, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
480 dw_scrollbar_set_range(vscrollbar, num_lines, rows);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
481 dw_scrollbar_set_pos(vscrollbar, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
482 current_col = current_row = 0;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
483 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
484 else
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
485 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
486 dw_scrollbar_set_range(hscrollbar, 0, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
487 dw_scrollbar_set_pos(hscrollbar, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
488 dw_scrollbar_set_range(vscrollbar, 0, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
489 dw_scrollbar_set_pos(vscrollbar, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
490 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
491 render_type = index;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
492 update_render();
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
493 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
494 return FALSE;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
495 }
566
f6de197ecbe9 Add dw_color_choose()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 531
diff changeset
496
f6de197ecbe9 Add dw_color_choose()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 531
diff changeset
497 int DWSIGNAL colorchoose_callback(HWND window, void *data)
f6de197ecbe9 Add dw_color_choose()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 531
diff changeset
498 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
499 current_color = dw_color_choose(current_color);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
500 return FALSE;
566
f6de197ecbe9 Add dw_color_choose()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 531
diff changeset
501 }
f6de197ecbe9 Add dw_color_choose()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 531
diff changeset
502
391
2059f18e9c20 Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 385
diff changeset
503 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
504 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
505 if(cursor_arrow)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
506 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
507 dw_window_set_text((HWND)cursortogglebutton,"Set Cursor pointer - ARROW");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
508 dw_window_set_pointer((HWND)data,DW_POINTER_CLOCK);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
509 cursor_arrow = 0;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
510 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
511 else
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
512 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
513 dw_window_set_text((HWND)cursortogglebutton,"Set Cursor pointer - CLOCK");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
514 dw_window_set_pointer((HWND)data,DW_POINTER_DEFAULT);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
515 cursor_arrow = 1;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
516 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
517 return FALSE;
391
2059f18e9c20 Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 385
diff changeset
518 }
2059f18e9c20 Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 385
diff changeset
519
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
520 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
521 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
522 dw_timer_disconnect( timerid );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
523 return TRUE;
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
524 }
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
525
267
bf8b907f8a29 Added initial version of updated key_press_event callback.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 266
diff changeset
526 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
527 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
528 char tmpbuf[100];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
529 if ( ch )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
530 sprintf( tmpbuf, "Key: %c(%d) Modifiers: %s(%d)", ch, ch, resolve_keymodifiers(state), state );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
531 else
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
532 sprintf( tmpbuf, "Key: %s(%d) Modifiers: %s(%d)", resolve_keyname(vk), vk, resolve_keymodifiers(state), state );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
533 dw_window_set_text( status1, tmpbuf);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
534 return 0;
620
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
535 }
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
536
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
537 int DWSIGNAL menu_callback(HWND window, void *data)
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
538 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
539 char buf[100];
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
540
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
541 sprintf( buf, "%s menu item selected", (char *)data );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
542 dw_messagebox( "Menu Item Callback", DW_MB_OK | DW_MB_INFORMATION, buf );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
543 return 0;
620
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
544 }
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
545
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
546 int DWSIGNAL menutoggle_callback(HWND window, void *data)
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
547 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
548 if ( menu_enabled )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
549 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
550 dw_menu_item_set_state( changeable_menu, CHECKABLE_MENUITEMID, DW_MIS_DISABLED );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
551 dw_menu_item_set_state( changeable_menu, NONCHECKABLE_MENUITEMID, DW_MIS_DISABLED );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
552 menu_enabled = 0;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
553 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
554 else
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
555 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
556 dw_menu_item_set_state( changeable_menu, CHECKABLE_MENUITEMID, DW_MIS_ENABLED );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
557 dw_menu_item_set_state( changeable_menu, NONCHECKABLE_MENUITEMID, DW_MIS_ENABLED );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
558 menu_enabled = 1;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
559 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
560 return 0;
620
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
561 }
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
562
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
563 int DWSIGNAL helpabout_callback(HWND window, void *data)
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
564 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
565 char buf[100];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
566 DWEnv env;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
567
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
568 dw_environment_query(&env);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
569 sprintf( buf, "dwindows test\n\nOS: %s %s %s Version: %d.%d.%d.%d\n\ndwindows Version: %d.%d.%d",
620
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
570 env.osName, env.buildDate, env.buildTime,
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
571 env.MajorVersion, env.MinorVersion, env.MajorBuild, env.MinorBuild,
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
572 env.DWMajorVersion, env.DWMinorVersion, env.DWSubVersion );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
573 dw_messagebox( "About dwindows", DW_MB_OK | DW_MB_INFORMATION, buf );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
574 return 0;
254
42332e598d55 Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 253
diff changeset
575 }
42332e598d55 Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 253
diff changeset
576
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
577 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
578 {
1559
bc3a11fe9a46 Don't use _dw_pool_drain() in dw_exit() on Mac... that drains and recreates the pool.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1557
diff changeset
579 if(dw_messagebox("dwtest", DW_MB_YESNO | DW_MB_QUESTION, "Are you sure you want to exit?"))
bc3a11fe9a46 Don't use _dw_pool_drain() in dw_exit() on Mac... that drains and recreates the pool.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1557
diff changeset
580 {
bc3a11fe9a46 Don't use _dw_pool_drain() in dw_exit() on Mac... that drains and recreates the pool.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1557
diff changeset
581 dw_main_quit();
bc3a11fe9a46 Don't use _dw_pool_drain() in dw_exit() on Mac... that drains and recreates the pool.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1557
diff changeset
582 }
bc3a11fe9a46 Don't use _dw_pool_drain() in dw_exit() on Mac... that drains and recreates the pool.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1557
diff changeset
583 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
584 }
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
585
905
ae5d884af4ed Added a Browse Folder button to test the folder browsing dialogs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 897
diff changeset
586 int DWSIGNAL browse_file_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
587 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
588 char *tmp;
1294
4bc8b6ffbe1e Code changes to enable default filename on Windows with dw_file_browse().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1291
diff changeset
589 tmp = dw_file_browse("Pick a file", "dwtest.c", "c", DW_FILE_OPEN );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
590 if ( tmp )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
591 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
592 if ( current_file )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
593 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
594 dw_free( current_file );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
595 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
596 current_file = tmp;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
597 dw_window_set_text( entryfield, current_file );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
598 read_file();
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
599 current_col = current_row = 0;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
600 update_render();
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
601 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
602 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
603 }
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
604
905
ae5d884af4ed Added a Browse Folder button to test the folder browsing dialogs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 897
diff changeset
605 int DWSIGNAL browse_folder_callback(HWND window, void *data)
ae5d884af4ed Added a Browse Folder button to test the folder browsing dialogs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 897
diff changeset
606 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
607 char *tmp = dw_file_browse("Pick a folder", ".", "c", DW_DIRECTORY_OPEN );
1306
dbd507f42947 Added dw_debug() logging function which will output a message to the debugging console.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1294
diff changeset
608 dw_debug("Folder picked: %s\n", tmp ? tmp : "None");
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
609 return 0;
905
ae5d884af4ed Added a Browse Folder button to test the folder browsing dialogs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 897
diff changeset
610 }
ae5d884af4ed Added a Browse Folder button to test the folder browsing dialogs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 897
diff changeset
611
503
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
612 int DWSIGNAL button_callback(HWND window, void *data)
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
613 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
614 unsigned int y,m,d;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
615 unsigned int idx;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
616 int len;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
617 long spvalue;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
618 char buf1[100];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
619 char buf2[100];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
620 char buf3[500];
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
621
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
622 idx = dw_listbox_selected( combobox1 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
623 dw_listbox_get_text( combobox1, idx, buf1, 99 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
624 idx = dw_listbox_selected( combobox2 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
625 dw_listbox_get_text( combobox2, idx, buf2, 99 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
626 dw_calendar_get_date( cal, &y, &m, &d );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
627 spvalue = dw_spinbutton_get_pos( spinbutton );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
628 len = sprintf( buf3, "spinbutton: %ld\ncombobox1: \"%s\"\ncombobox2: \"%s\"\ncalendar: %d-%d-%d",
620
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
629 spvalue,
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
630 buf1, buf2,
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
631 y, m, d );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
632 dw_messagebox( "Values", DW_MB_OK | DW_MB_INFORMATION, buf3 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
633 dw_clipboard_set_text( buf3, len );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
634 return 0;
503
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
635 }
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
636
1190
76262040ed5f Added DW_PERCENT_INDETERMINATE which can be passed to dw_percent_set_pos() to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1186
diff changeset
637 int DWSIGNAL percent_button_box_callback(HWND window, void *data)
503
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
638 {
1190
76262040ed5f Added DW_PERCENT_INDETERMINATE which can be passed to dw_percent_set_pos() to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1186
diff changeset
639 dw_percent_set_pos(percent, DW_PERCENT_INDETERMINATE);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
640 return 0;
503
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
641 }
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
642
634
c6a216c8174f Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 629
diff changeset
643 int DWSIGNAL change_color_red_callback(HWND window, void *data)
c6a216c8174f Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 629
diff changeset
644 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
645 dw_window_set_color(buttonsbox, DW_CLR_RED, DW_CLR_RED);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
646 return 0;
634
c6a216c8174f Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 629
diff changeset
647 }
c6a216c8174f Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 629
diff changeset
648
c6a216c8174f Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 629
diff changeset
649 int DWSIGNAL change_color_yellow_callback(HWND window, void *data)
c6a216c8174f Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 629
diff changeset
650 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
651 dw_window_set_color(buttonsbox, DW_CLR_YELLOW, DW_CLR_YELLOW);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
652 return 0;
634
c6a216c8174f Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 629
diff changeset
653 }
c6a216c8174f Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 629
diff changeset
654
c6a216c8174f Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 629
diff changeset
655
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
656 /* Callback to handle user selection of the scrollbar position */
620
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
657 void DWSIGNAL scrollbar_valuechanged_callback(HWND hwnd, int value, void *data)
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
658 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
659 if(data)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
660 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
661 HWND stext = (HWND)data;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
662 char tmpbuf[100];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
663 if ( hwnd == vscrollbar )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
664 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
665 current_row = value;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
666 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
667 else
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
668 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
669 current_col = value;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
670 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
671 sprintf(tmpbuf, "Row:%d Col:%d Lines:%d Cols:%d", current_row,current_col,num_lines,max_linewidth);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
672 dw_window_set_text(stext, tmpbuf);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
673 update_render();
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
674 }
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
675 }
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
676
602
489a684af1bb Add some more test
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 600
diff changeset
677 /* Callback to handle user selection of the spinbutton position */
620
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
678 void DWSIGNAL spinbutton_valuechanged_callback(HWND hwnd, int value, void *data)
602
489a684af1bb Add some more test
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 600
diff changeset
679 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
680 dw_messagebox("DWTest", DW_MB_OK, "New value from spinbutton: %d\n", value);
602
489a684af1bb Add some more test
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 600
diff changeset
681 }
489a684af1bb Add some more test
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 600
diff changeset
682
627
77cc62375fee Fixed dw_html_raw() under GTK+ and added test case for it
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 621
diff changeset
683 /* Callback to handle user selection of the slider position */
77cc62375fee Fixed dw_html_raw() under GTK+ and added test case for it
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 621
diff changeset
684 void DWSIGNAL slider_valuechanged_callback(HWND hwnd, int value, void *data)
77cc62375fee Fixed dw_html_raw() under GTK+ and added test case for it
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 621
diff changeset
685 {
1190
76262040ed5f Added DW_PERCENT_INDETERMINATE which can be passed to dw_percent_set_pos() to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1186
diff changeset
686 dw_percent_set_pos(percent, value * 10);
627
77cc62375fee Fixed dw_html_raw() under GTK+ and added test case for it
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 621
diff changeset
687 }
77cc62375fee Fixed dw_html_raw() under GTK+ and added test case for it
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 621
diff changeset
688
218
fe0ab0040ba2 Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 217
diff changeset
689 /* 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
690 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
691 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
692 HPIXMAP old1 = text1pm, old2 = text2pm;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
693 unsigned long depth = dw_color_depth_get();
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
694
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
695 rows = height / font_height;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
696 cols = width / font_width;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
697
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
698 /* Create new pixmaps with the current sizes */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
699 text1pm = dw_pixmap_new(textbox1, (unsigned long)(font_width*(width1)), (unsigned long)height, (int)depth);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
700 text2pm = dw_pixmap_new(textbox2, (unsigned long)width, (unsigned long)height, (int)depth);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
701
1461
09323eb9dc32 Clear the side pixmap on configure so there won't sometimes be garbage there.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1460
diff changeset
702 /* Make sure the side area is cleared */
09323eb9dc32 Clear the side pixmap on configure so there won't sometimes be garbage there.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1460
diff changeset
703 dw_color_foreground_set(DW_CLR_WHITE);
1557
030e9bddc1c9 Fixed some potential Objective-C memory leaks on Mac reported by XCode 4.2.1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1547
diff changeset
704 dw_draw_rect(0, text1pm, DW_DRAW_FILL, 0, 0, (int)DW_PIXMAP_WIDTH(text1pm), (int)DW_PIXMAP_HEIGHT(text1pm));
1461
09323eb9dc32 Clear the side pixmap on configure so there won't sometimes be garbage there.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1460
diff changeset
705
09323eb9dc32 Clear the side pixmap on configure so there won't sometimes be garbage there.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1460
diff changeset
706 /* Destroy the old pixmaps */
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
707 dw_pixmap_destroy(old1);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
708 dw_pixmap_destroy(old2);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
709
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
710 /* Update scrollbar ranges with new values */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
711 dw_scrollbar_set_range(hscrollbar, max_linewidth, cols);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
712 dw_scrollbar_set_range(vscrollbar, num_lines, rows);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
713
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
714 /* Redraw the window */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
715 update_render();
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
716 return TRUE;
218
fe0ab0040ba2 Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 217
diff changeset
717 }
fe0ab0040ba2 Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 217
diff changeset
718
311
24c1dfffe97e Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 310
diff changeset
719 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
720 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
721 char buf[200];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
722 HWND statline = (HWND)data;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
723
1102
cfe7d2b6bc16 Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1090
diff changeset
724 sprintf(buf,"DW_SIGNAL_ITEM_ENTER: Window: %x Text: %s", DW_POINTER_TO_UINT(window), text );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
725 dw_window_set_text( statline, buf);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
726 return 0;
304
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
727 }
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
728
311
24c1dfffe97e Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 310
diff changeset
729 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
730 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
731 char buf[200];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
732 HWND statline = (HWND)data;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
733
1102
cfe7d2b6bc16 Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1090
diff changeset
734 sprintf(buf,"DW_SIGNAL_ITEM_CONTEXT: Window: %x Text: %s x: %d y: %d Itemdata: %x", DW_POINTER_TO_UINT(window), text, x, y, DW_POINTER_TO_UINT(itemdata) );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
735 dw_window_set_text( statline, buf);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
736 return 0;
304
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
737 }
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
738
311
24c1dfffe97e Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 310
diff changeset
739 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
740 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
741 char buf[200];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
742 HWND statline = (HWND)data;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
743
1102
cfe7d2b6bc16 Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1090
diff changeset
744 sprintf(buf,"DW_SIGNAL_LIST_SELECT: Window: %d Item: %d", DW_POINTER_TO_UINT(window), item );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
745 dw_window_set_text( statline, buf);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
746 return 0;
304
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
747 }
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
748
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
749 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
750 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
751 char buf[200];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
752 HWND statline = (HWND)data;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
753
1102
cfe7d2b6bc16 Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1090
diff changeset
754 sprintf(buf,"DW_SIGNAL_ITEM_SELECT: Window: %x Item: %x Text: %s Itemdata: %x", DW_POINTER_TO_UINT(window),
cfe7d2b6bc16 Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1090
diff changeset
755 DW_POINTER_TO_UINT(item), text, DW_POINTER_TO_UINT(itemdata) );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
756 dw_window_set_text( statline, buf);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
757 return 0;
304
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
758 }
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
759
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
760 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
761 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
762 char buf[200];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
763 char *str;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
764 HWND statline = (HWND)data;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
765 unsigned long size;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
766
1102
cfe7d2b6bc16 Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1090
diff changeset
767 sprintf(buf,"DW_SIGNAL_ITEM_SELECT: Window: %x Item: %x Text: %s Itemdata: %x", DW_POINTER_TO_UINT(window),
cfe7d2b6bc16 Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1090
diff changeset
768 DW_POINTER_TO_UINT(item), text, DW_POINTER_TO_UINT(itemdata) );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
769 dw_window_set_text( statline, buf);
1102
cfe7d2b6bc16 Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1090
diff changeset
770 sprintf(buf,"\r\nDW_SIGNAL_ITEM_SELECT: Window: %x Item: %x Text: %s Itemdata: %x\r\n", DW_POINTER_TO_UINT(window),
cfe7d2b6bc16 Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1090
diff changeset
771 DW_POINTER_TO_UINT(item), text, DW_POINTER_TO_UINT(itemdata) );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
772 mle_point = dw_mle_import( container_mle, buf, mle_point);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
773 str = dw_container_query_start(container, DW_CRA_SELECTED);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
774 while(str)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
775 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
776 sprintf(buf,"Selected: %s\r\n", str);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
777 mle_point = dw_mle_import( container_mle, buf, mle_point);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
778 str = dw_container_query_next(container, DW_CRA_SELECTED);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
779 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
780 /* Make the last inserted point the cursor location */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
781 dw_mle_set_cursor(container_mle, mle_point);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
782 /* set the details of item 0 to new data */
1306
dbd507f42947 Added dw_debug() logging function which will output a message to the debugging console.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1294
diff changeset
783 dw_debug("In cb: container: %x containerinfo: %x icon: %x\n", DW_POINTER_TO_INT(container),
1102
cfe7d2b6bc16 Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1090
diff changeset
784 DW_POINTER_TO_INT(containerinfo), DW_POINTER_TO_INT(fileicon));
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
785 dw_filesystem_change_file(container, 0, "new data", fileicon);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
786 size = 999;
1306
dbd507f42947 Added dw_debug() logging function which will output a message to the debugging console.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1294
diff changeset
787 dw_debug("In cb: container: %x containerinfo: %x icon: %x\n", DW_POINTER_TO_INT(container),
1102
cfe7d2b6bc16 Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1090
diff changeset
788 DW_POINTER_TO_INT(containerinfo), DW_POINTER_TO_INT(fileicon));
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
789 dw_filesystem_change_item(container, 1, 0, &size);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
790 return 0;
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
791 }
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
792
346
81fae15885d7 Implemented switch-page on OS/2, and changed the signal prototype to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 336
diff changeset
793 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
794 {
1306
dbd507f42947 Added dw_debug() logging function which will output a message to the debugging console.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1294
diff changeset
795 dw_debug("DW_SIGNAL_SWITCH_PAGE: Window: %x PageNum: %u Itemdata: %x\n", DW_POINTER_TO_UINT(window),
dbd507f42947 Added dw_debug() logging function which will output a message to the debugging console.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1294
diff changeset
796 DW_POINTER_TO_UINT(page_num), DW_POINTER_TO_UINT(itemdata) );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
797 return 0;
333
b6491cefa512 Add test for switch-page signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 328
diff changeset
798 }
b6491cefa512 Add test for switch-page signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 328
diff changeset
799
474
053211e0698b Add tracing code for column-click signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 459
diff changeset
800 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
801 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
802 char buf[200], buf1[100];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
803 HWND statline = (HWND)data;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
804 int column_type;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
805
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
806 if(column_num == 0)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
807 strcpy(buf1,"Filename");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
808 else
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
809 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
810 column_type = dw_filesystem_get_column_type( window, column_num-1 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
811 if( column_type == DW_CFA_STRING)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
812 strcpy(buf1,"String");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
813 else if( column_type == DW_CFA_ULONG)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
814 strcpy(buf1,"ULong");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
815 else if( column_type == DW_CFA_DATE)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
816 strcpy(buf1,"Date");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
817 else if( column_type == DW_CFA_TIME)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
818 strcpy(buf1,"Time");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
819 else if( column_type == DW_CFA_BITMAPORICON)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
820 strcpy(buf1,"BitmapOrIcon");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
821 else
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
822 strcpy(buf1,"Unknown");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
823 }
1102
cfe7d2b6bc16 Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1090
diff changeset
824 sprintf(buf,"DW_SIGNAL_COLUMN_CLICK: Window: %x Column: %d Type: %s Itemdata: %x", DW_POINTER_TO_UINT(window),
cfe7d2b6bc16 Added DW_INT_TO_POINTER/DW_UINT_TO_POINTER/DW_POINTER_TO_INT/DW_POINTER_TO_UINT macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1090
diff changeset
825 column_num, buf1, DW_POINTER_TO_UINT(data) );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
826 dw_window_set_text( statline, buf);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
827 return 0;
474
053211e0698b Add tracing code for column-click signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 459
diff changeset
828 }
053211e0698b Add tracing code for column-click signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 459
diff changeset
829
602
489a684af1bb Add some more test
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 600
diff changeset
830 int DWSIGNAL combobox_select_event_callback(HWND window, int index)
489a684af1bb Add some more test
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 600
diff changeset
831 {
1306
dbd507f42947 Added dw_debug() logging function which will output a message to the debugging console.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1294
diff changeset
832 dw_debug("got combobox_select_event for index: %d, iteration: %d\n", index, iteration++);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
833 return FALSE;
602
489a684af1bb Add some more test
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 600
diff changeset
834 }
489a684af1bb Add some more test
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 600
diff changeset
835
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
836 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
837 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
838 HWND browsefilebutton, browsefolderbutton, browsebox;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
839
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
840 lbbox = dw_box_new(BOXVERT, 10);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
841
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
842 dw_box_pack_start(notebookbox1, lbbox, 150, 70, TRUE, TRUE, 0);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
843
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
844 /* Archive Name */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
845 stext = dw_text_new("File to browse", 0);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
846
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
847 dw_window_set_style(stext, DW_DT_VCENTER, DW_DT_VCENTER);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
848
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
849 dw_box_pack_start(lbbox, stext, 130, 15, TRUE, TRUE, 2);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
850
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
851 browsebox = dw_box_new(BOXHORZ, 0);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
852
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
853 dw_box_pack_start(lbbox, browsebox, 0, 0, TRUE, TRUE, 0);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
854
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
855 entryfield = dw_entryfield_new("", 100L);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
856
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
857 dw_entryfield_set_limit(entryfield, 260);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
858
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
859 dw_box_pack_start(browsebox, entryfield, 100, 15, TRUE, TRUE, 4);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
860
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
861 browsefilebutton = dw_button_new("Browse File", 1001L);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
862
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
863 dw_box_pack_start(browsebox, browsefilebutton, 40, 15, TRUE, TRUE, 0);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
864
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
865 browsefolderbutton = dw_button_new("Browse Folder", 1001L);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
866
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
867 dw_box_pack_start(browsebox, browsefolderbutton, 40, 15, TRUE, TRUE, 0);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
868
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
869 dw_window_set_color(browsebox, DW_CLR_PALEGRAY, DW_CLR_PALEGRAY);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
870 dw_window_set_color(stext, DW_CLR_BLACK, DW_CLR_PALEGRAY);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
871
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
872 /* Buttons */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
873 buttonbox = dw_box_new(BOXHORZ, 10);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
874
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
875 dw_box_pack_start(lbbox, buttonbox, 0, 0, TRUE, TRUE, 0);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
876
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
877 cursortogglebutton = dw_button_new("Set Cursor pointer - CLOCK", 1003L);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
878 dw_box_pack_start(buttonbox, cursortogglebutton, 130, 30, TRUE, TRUE, 2);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
879
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
880 okbutton = dw_button_new("Turn Off Annoying Beep!", 1001L);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
881 dw_box_pack_start(buttonbox, okbutton, 130, 30, TRUE, TRUE, 2);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
882
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
883 cancelbutton = dw_button_new("Exit", 1002L);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
884 dw_box_pack_start(buttonbox, cancelbutton, 130, 30, TRUE, TRUE, 2);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
885 dw_window_click_default( mainwindow, cancelbutton );
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
886
1077
34f1d6f5f1c3 Added function dw_box_pack_at_index() on Windows, Mac and OS/2. And an example usage in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1049
diff changeset
887 colorchoosebutton = dw_button_new("Color Chooser Dialog", 1004L);
34f1d6f5f1c3 Added function dw_box_pack_at_index() on Windows, Mac and OS/2. And an example usage in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1049
diff changeset
888 dw_box_pack_at_index(buttonbox, colorchoosebutton, 1, 130, 30, TRUE, TRUE, 2);
34f1d6f5f1c3 Added function dw_box_pack_at_index() on Windows, Mac and OS/2. And an example usage in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1049
diff changeset
889
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
890 /* Set some nice fonts and colors */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
891 dw_window_set_color(lbbox, DW_CLR_DARKCYAN, DW_CLR_PALEGRAY);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
892 dw_window_set_color(buttonbox, DW_CLR_DARKCYAN, DW_CLR_PALEGRAY);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
893 dw_window_set_color(okbutton, DW_CLR_PALEGRAY, DW_CLR_DARKCYAN);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
894
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
895 dw_signal_connect(browsefilebutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(browse_file_callback), (void *)notebookbox1);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
896 dw_signal_connect(browsefolderbutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(browse_folder_callback), (void *)notebookbox1);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
897 dw_signal_connect(okbutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(beep_callback), (void *)notebookbox1);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
898 dw_signal_connect(cancelbutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(exit_callback), (void *)mainwindow);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
899 dw_signal_connect(cursortogglebutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(cursortoggle_callback), (void *)mainwindow);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
900 dw_signal_connect(colorchoosebutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(colorchoose_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
901 }
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
902
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
903 int API motion_notify_event(HWND window, int x, int y, int buttonmask, void *data)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
904 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
905 char buf[200];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
906 sprintf(buf, "%s: %dx%d", data ? "motion_notify" : "button_press", x, y);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
907 dw_window_set_text(status2, buf);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
908 return 0;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
909 }
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
910
1560
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
911 int DWSIGNAL show_window_callback(HWND window, void *data)
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
912 {
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
913 HWND thiswindow = (HWND)data;
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
914 if(thiswindow)
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
915 {
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
916 dw_window_show(thiswindow);
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
917 dw_window_raise(thiswindow);
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
918 }
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
919 return TRUE;
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
920 }
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
921
1220
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
922 int API context_menu_event(HWND window, int x, int y, int buttonmask, void *data)
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
923 {
1221
10f5b8645975 Fixes to allow non-toplevel window handles in dw_taskbar_insert() on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1220
diff changeset
924 HMENUI hwndMenu = dw_menu_new(0L);
1560
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
925 HWND menuitem = dw_menu_append_item(hwndMenu, "~Quit", DW_MENU_POPUP, 0L, TRUE, FALSE, DW_NOMENU);
1220
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
926 long px, py;
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
927
1560
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
928 dw_signal_connect(menuitem, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(exit_callback), (void *)mainwindow);
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
929 dw_menu_append_item(hwndMenu, DW_MENU_SEPARATOR, DW_MENU_POPUP, 0L, TRUE, FALSE, DW_NOMENU);
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
930 menuitem = dw_menu_append_item(hwndMenu, "~Show Window", DW_MENU_POPUP, 0L, TRUE, FALSE, DW_NOMENU);
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
931 dw_signal_connect(menuitem, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(show_window_callback), (void *)mainwindow);
1220
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
932 dw_pointer_query_pos(&px, &py);
1227
b54d37938d61 Fix for the status popup menu not functioning when a different
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1224
diff changeset
933 /* Use the toplevel window handle here.... because on the Mac..
b54d37938d61 Fix for the status popup menu not functioning when a different
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1224
diff changeset
934 * using the control itself, when a different tab is active
b54d37938d61 Fix for the status popup menu not functioning when a different
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1224
diff changeset
935 * the control is removed from the window and can no longer
b54d37938d61 Fix for the status popup menu not functioning when a different
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1224
diff changeset
936 * handle the messages.
b54d37938d61 Fix for the status popup menu not functioning when a different
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1224
diff changeset
937 */
b54d37938d61 Fix for the status popup menu not functioning when a different
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1224
diff changeset
938 dw_menu_popup(&hwndMenu, mainwindow, (int)px, (int)py);
1224
cfe8608253a8 Return code of 0 from the button press callback on OS/2 was causing
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1221
diff changeset
939 return TRUE;
1220
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
940 }
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
941
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
942 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
943 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
944 unsigned long depth = dw_color_depth_get();
1137
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
945 HWND vscrollbox, hbox, button1, button2, label;
1460
da9cd5da3440 Test dw_window_get_preferred_size by using it to get the size of the scrollbars.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1456
diff changeset
946 int vscrollbarwidth, hscrollbarheight;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
947
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
948 /* create a box to pack into the notebook page */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
949 pagebox = dw_box_new(BOXHORZ, 2);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
950 dw_box_pack_start( notebookbox2, pagebox, 0, 0, TRUE, TRUE, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
951 /* now a status area under this box */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
952 hbox = dw_box_new(BOXHORZ, 1 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
953 dw_box_pack_start( notebookbox2, hbox, 100, 20, TRUE, FALSE, 1);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
954 status1 = dw_status_text_new("", 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
955 dw_box_pack_start( hbox, status1, 100, 20, TRUE, FALSE, 1);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
956 status2 = dw_status_text_new("", 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
957 dw_box_pack_start( hbox, status2, 100, 20, TRUE, FALSE, 1);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
958 /* a box with combobox and button */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
959 hbox = dw_box_new(BOXHORZ, 1 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
960 dw_box_pack_start( notebookbox2, hbox, 100, 25, TRUE, FALSE, 1);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
961 rendcombo = dw_combobox_new( "Shapes Double Buffered", 0 );
1142
88cc189b5e56 Some layout updates on the dwtest render page.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1137
diff changeset
962 dw_box_pack_start( hbox, rendcombo, 80, 25, TRUE, FALSE, 0);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
963 dw_listbox_append(rendcombo, "Shapes Double Buffered");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
964 dw_listbox_append(rendcombo, "Shapes Direct");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
965 dw_listbox_append(rendcombo, "File Display");
957
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
966 label = dw_text_new("Image X:", 100);
1142
88cc189b5e56 Some layout updates on the dwtest render page.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1137
diff changeset
967 dw_window_set_style(label, DW_DT_VCENTER | DW_DT_CENTER, DW_DT_VCENTER | DW_DT_CENTER);
1456
6bf5dc7da45d Added automatic widget size detection a variety of places in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1379
diff changeset
968 dw_box_pack_start( hbox, label, -1, 25, FALSE, FALSE, 0);
957
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
969 imagexspin = dw_spinbutton_new("20", 1021);
1142
88cc189b5e56 Some layout updates on the dwtest render page.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1137
diff changeset
970 dw_box_pack_start( hbox, imagexspin, 25, 25, TRUE, FALSE, 0);
957
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
971 label = dw_text_new("Y:", 100);
1142
88cc189b5e56 Some layout updates on the dwtest render page.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1137
diff changeset
972 dw_window_set_style(label, DW_DT_VCENTER | DW_DT_CENTER, DW_DT_VCENTER | DW_DT_CENTER);
1456
6bf5dc7da45d Added automatic widget size detection a variety of places in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1379
diff changeset
973 dw_box_pack_start( hbox, label, -1, 25, FALSE, FALSE, 0);
957
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
974 imageyspin = dw_spinbutton_new("20", 1021);
1142
88cc189b5e56 Some layout updates on the dwtest render page.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1137
diff changeset
975 dw_box_pack_start( hbox, imageyspin, 25, 25, TRUE, FALSE, 0);
957
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
976 dw_spinbutton_set_limits(imagexspin, 2000, 0);
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
977 dw_spinbutton_set_limits(imageyspin, 2000, 0);
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
978 dw_spinbutton_set_pos(imagexspin, 20);
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
979 dw_spinbutton_set_pos(imageyspin, 20);
1243
c191a562c14a Added new dw_pixmap_stretch_bitblt() function on Windows and OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1242
diff changeset
980 imagestretchcheck = dw_checkbox_new("Stretch", 1021);
1456
6bf5dc7da45d Added automatic widget size detection a variety of places in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1379
diff changeset
981 dw_box_pack_start( hbox, imagestretchcheck, -1, 25, FALSE, FALSE, 0);
957
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
982
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
983 button1 = dw_button_new( "Refresh", 1223L );
1142
88cc189b5e56 Some layout updates on the dwtest render page.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1137
diff changeset
984 dw_box_pack_start( hbox, button1, 100, 25, FALSE, FALSE, 0);
1137
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
985 button2 = dw_button_new( "Print", 1224L );
1142
88cc189b5e56 Some layout updates on the dwtest render page.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1137
diff changeset
986 dw_box_pack_start( hbox, button2, 100, 25, FALSE, FALSE, 0);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
987
1460
da9cd5da3440 Test dw_window_get_preferred_size by using it to get the size of the scrollbars.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1456
diff changeset
988 /* Pre-create the scrollbars so we can query their sizes */
da9cd5da3440 Test dw_window_get_preferred_size by using it to get the size of the scrollbars.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1456
diff changeset
989 vscrollbar = dw_scrollbar_new(DW_VERT, 50);
da9cd5da3440 Test dw_window_get_preferred_size by using it to get the size of the scrollbars.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1456
diff changeset
990 hscrollbar = dw_scrollbar_new(DW_HORZ, 50);
da9cd5da3440 Test dw_window_get_preferred_size by using it to get the size of the scrollbars.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1456
diff changeset
991 dw_window_get_preferred_size(vscrollbar, &vscrollbarwidth, NULL);
da9cd5da3440 Test dw_window_get_preferred_size by using it to get the size of the scrollbars.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1456
diff changeset
992 dw_window_get_preferred_size(hscrollbar, NULL, &hscrollbarheight);
da9cd5da3440 Test dw_window_get_preferred_size by using it to get the size of the scrollbars.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1456
diff changeset
993
1525
34ce887be578 Handle special case of overlay scrollbars returning size 0.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1484
diff changeset
994 /* On GTK with overlay scrollbars enabled this returns us 0...
34ce887be578 Handle special case of overlay scrollbars returning size 0.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1484
diff changeset
995 * so in that case we need to give it some real values.
34ce887be578 Handle special case of overlay scrollbars returning size 0.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1484
diff changeset
996 */
34ce887be578 Handle special case of overlay scrollbars returning size 0.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1484
diff changeset
997 if(!vscrollbarwidth)
34ce887be578 Handle special case of overlay scrollbars returning size 0.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1484
diff changeset
998 vscrollbarwidth = 8;
34ce887be578 Handle special case of overlay scrollbars returning size 0.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1484
diff changeset
999 if(!hscrollbarheight)
34ce887be578 Handle special case of overlay scrollbars returning size 0.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1484
diff changeset
1000 hscrollbarheight = 8;
34ce887be578 Handle special case of overlay scrollbars returning size 0.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1484
diff changeset
1001
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1002 /* create render box for number pixmap */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1003 textbox1 = dw_render_new( 100 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1004 dw_window_set_font(textbox1, FIXEDFONT);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1005 dw_font_text_extents_get(textbox1, NULL, "(g", &font_width, &font_height);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1006 font_width = font_width / 2;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1007 vscrollbox = dw_box_new(BOXVERT, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1008 dw_box_pack_start(vscrollbox, textbox1, font_width*width1, font_height*rows, FALSE, TRUE, 0);
1460
da9cd5da3440 Test dw_window_get_preferred_size by using it to get the size of the scrollbars.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1456
diff changeset
1009 dw_box_pack_start(vscrollbox, 0, (font_width*(width1+1)), hscrollbarheight, FALSE, FALSE, 0);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1010 dw_box_pack_start(pagebox, vscrollbox, 0, 0, FALSE, TRUE, 0);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1011
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1012 /* pack empty space 1 character wide */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1013 dw_box_pack_start(pagebox, 0, font_width, 0, FALSE, TRUE, 0);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1014
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1015 /* create box for filecontents and horz scrollbar */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1016 textboxA = dw_box_new( BOXVERT,0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1017 dw_box_pack_start( pagebox, textboxA, 0, 0, TRUE, TRUE, 0);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1018
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1019 /* create render box for filecontents pixmap */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1020 textbox2 = dw_render_new( 101 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1021 dw_box_pack_start( textboxA, textbox2, 10, 10, TRUE, TRUE, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1022 dw_window_set_font(textbox2, FIXEDFONT);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1023 /* create horizonal scrollbar */
1460
da9cd5da3440 Test dw_window_get_preferred_size by using it to get the size of the scrollbars.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1456
diff changeset
1024 dw_box_pack_start( textboxA, hscrollbar, -1, -1, TRUE, FALSE, 0);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1025
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1026 /* create vertical scrollbar */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1027 vscrollbox = dw_box_new(BOXVERT, 0);
1460
da9cd5da3440 Test dw_window_get_preferred_size by using it to get the size of the scrollbars.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1456
diff changeset
1028 dw_box_pack_start(vscrollbox, vscrollbar, -1, -1, FALSE, TRUE, 0);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1029 /* Pack an area of empty space 14x14 pixels */
1460
da9cd5da3440 Test dw_window_get_preferred_size by using it to get the size of the scrollbars.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1456
diff changeset
1030 dw_box_pack_start(vscrollbox, 0, vscrollbarwidth, hscrollbarheight, FALSE, FALSE, 0);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1031 dw_box_pack_start(pagebox, vscrollbox, 0, 0, FALSE, TRUE, 0);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1032
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1033 text1pm = dw_pixmap_new( textbox1, font_width*width1, font_height*rows, (int)depth );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1034 text2pm = dw_pixmap_new( textbox2, font_width*cols, font_height*rows, (int)depth );
958
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 957
diff changeset
1035 image = dw_pixmap_new_from_file(textbox2, "image/test");
957
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
1036 if(!image)
958
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 957
diff changeset
1037 image = dw_pixmap_new_from_file(textbox2, "~/test");
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 957
diff changeset
1038 if(image)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 957
diff changeset
1039 dw_pixmap_set_transparent_color(image, DW_CLR_WHITE);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1040
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1041 dw_messagebox("DWTest", DW_MB_OK|DW_MB_INFORMATION, "Width: %d Height: %d\n", font_width, font_height);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1042 dw_draw_rect(0, text1pm, TRUE, 0, 0, font_width*width1, font_height*rows);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1043 dw_draw_rect(0, text2pm, TRUE, 0, 0, font_width*cols, font_height*rows);
1220
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
1044 dw_signal_connect(textbox1, DW_SIGNAL_BUTTON_PRESS, DW_SIGNAL_FUNC(context_menu_event), NULL);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1045 dw_signal_connect(textbox1, DW_SIGNAL_EXPOSE, DW_SIGNAL_FUNC(text_expose), NULL);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1046 dw_signal_connect(textbox2, DW_SIGNAL_EXPOSE, DW_SIGNAL_FUNC(text_expose), NULL);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1047 dw_signal_connect(textbox2, DW_SIGNAL_CONFIGURE, DW_SIGNAL_FUNC(configure_event), text2pm);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1048 dw_signal_connect(textbox2, DW_SIGNAL_MOTION_NOTIFY, DW_SIGNAL_FUNC(motion_notify_event), (void *)1);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1049 dw_signal_connect(textbox2, DW_SIGNAL_BUTTON_PRESS, DW_SIGNAL_FUNC(motion_notify_event), (void *)0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1050 dw_signal_connect(hscrollbar, DW_SIGNAL_VALUE_CHANGED, DW_SIGNAL_FUNC(scrollbar_valuechanged_callback), (void *)status1);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1051 dw_signal_connect(vscrollbar, DW_SIGNAL_VALUE_CHANGED, DW_SIGNAL_FUNC(scrollbar_valuechanged_callback), (void *)status1);
1243
c191a562c14a Added new dw_pixmap_stretch_bitblt() function on Windows and OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1242
diff changeset
1052 dw_signal_connect(imagestretchcheck, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(refresh_callback), NULL);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1053 dw_signal_connect(button1, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(refresh_callback), NULL);
1137
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
1054 dw_signal_connect(button2, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(print_callback), NULL);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1055 dw_signal_connect(rendcombo, DW_SIGNAL_LIST_SELECT, DW_SIGNAL_FUNC(render_select_event_callback), NULL );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1056 dw_signal_connect(mainwindow, DW_SIGNAL_KEY_PRESS, DW_SIGNAL_FUNC(keypress_callback), NULL);
1220
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
1057
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
1058 dw_taskbar_insert(textbox1, fileicon, "DWTest");
254
42332e598d55 Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 253
diff changeset
1059 }
42332e598d55 Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 253
diff changeset
1060
42332e598d55 Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 253
diff changeset
1061 void tree_add(void)
42332e598d55 Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 253
diff changeset
1062 {
1186
ce83df520be0 Remove the MDI notebook tab from DEPRECATED.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1152
diff changeset
1063 HTREEITEM t1,t2;
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1064 HWND listbox;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1065
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1066 /* create a box to pack into the notebook page */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1067 listbox = dw_listbox_new(1024, TRUE);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1068 dw_box_pack_start( notebookbox3, listbox, 500, 200, TRUE, TRUE, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1069 dw_listbox_append(listbox, "Test 1");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1070 dw_listbox_append(listbox, "Test 2");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1071 dw_listbox_append(listbox, "Test 3");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1072 dw_listbox_append(listbox, "Test 4");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1073 dw_listbox_append(listbox, "Test 5");
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1074
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1075 /* now a tree area under this box */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1076 tree = dw_tree_new(101);
1463
77f530f95826 Fixed error in _dw_msleep on Solaris... fix was already in dwcompat.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1461
diff changeset
1077 dw_box_pack_start( notebookbox3, tree, 500, 200, TRUE, TRUE, 1);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1078
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1079 /* and a status area to see whats going on */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1080 tree_status = dw_status_text_new("", 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1081 dw_box_pack_start( notebookbox3, tree_status, 100, 20, TRUE, FALSE, 1);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1082
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1083 /* set up our signal trappers... */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1084 dw_signal_connect(tree, DW_SIGNAL_ITEM_CONTEXT, DW_SIGNAL_FUNC(item_context_cb), (void *)tree_status);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1085 dw_signal_connect(tree, DW_SIGNAL_ITEM_SELECT, DW_SIGNAL_FUNC(item_select_cb), (void *)tree_status);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1086
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1087 t1 = dw_tree_insert(tree, "tree folder 1", foldericon, NULL, (void *)1 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1088 t2 = dw_tree_insert(tree, "tree folder 2", foldericon, NULL, (void *)2 );
1186
ce83df520be0 Remove the MDI notebook tab from DEPRECATED.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1152
diff changeset
1089 dw_tree_insert(tree, "tree file 1", fileicon, t1, (void *)3 );
ce83df520be0 Remove the MDI notebook tab from DEPRECATED.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1152
diff changeset
1090 dw_tree_insert(tree, "tree file 2", fileicon, t1, (void *)4 );
ce83df520be0 Remove the MDI notebook tab from DEPRECATED.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1152
diff changeset
1091 dw_tree_insert(tree, "tree file 3", fileicon, t2, (void *)5 );
ce83df520be0 Remove the MDI notebook tab from DEPRECATED.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1152
diff changeset
1092 dw_tree_insert(tree, "tree file 4", fileicon, t2, (void *)6 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1093 /* set the folder name and icon again to show error with dw_tree_item_change under GTK 2.0 */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1094 dw_tree_item_change(tree, t1, "tree folder 1", foldericon );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1095 dw_tree_item_change(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
1096 }
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
1097
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
1098 void container_add(void)
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
1099 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1100 char *titles[4];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1101 char *names[3];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1102 char buffer[100];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1103 unsigned long flags[4] = { DW_CFA_BITMAPORICON | DW_CFA_LEFT | DW_CFA_HORZSEPARATOR | DW_CFA_SEPARATOR,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1104 DW_CFA_ULONG | DW_CFA_RIGHT | DW_CFA_HORZSEPARATOR | DW_CFA_SEPARATOR,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1105 DW_CFA_TIME | DW_CFA_CENTER | DW_CFA_HORZSEPARATOR | DW_CFA_SEPARATOR,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1106 DW_CFA_DATE | DW_CFA_LEFT | DW_CFA_HORZSEPARATOR | DW_CFA_SEPARATOR };
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1107 int z;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1108 CTIME time;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1109 CDATE date;
1319
03f0bc85e7be Code change to fix llvm-gcc optimization problem on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1306
diff changeset
1110 unsigned long size, newpoint;
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1111 HICN thisicon;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1112
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1113 /* create a box to pack into the notebook page */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1114 containerbox = dw_box_new(BOXHORZ, 2);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1115 dw_box_pack_start( notebookbox4, containerbox, 500, 200, TRUE, TRUE, 0);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1116
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1117 /* now a container area under this box */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1118 container = dw_container_new(100, TRUE);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1119 dw_box_pack_start( notebookbox4, container, 500, 200, TRUE, FALSE, 1);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1120
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1121 /* and a status area to see whats going on */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1122 container_status = dw_status_text_new("", 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1123 dw_box_pack_start( notebookbox4, container_status, 100, 20, TRUE, FALSE, 1);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1124
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1125 titles[0] = "Type";
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1126 titles[1] = "Size";
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1127 titles[2] = "Time";
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1128 titles[3] = "Date";
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1129
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1130 dw_filesystem_setup(container, flags, titles, 4);
1291
b99b0b2c2826 Renamed dw_container_set_row_bg() to dw_container_set_stripe().
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1282
diff changeset
1131 dw_container_set_stripe(container, DW_CLR_DEFAULT, DW_CLR_DEFAULT);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1132 containerinfo = dw_container_alloc(container, 3);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1133
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1134 for(z=0;z<3;z++)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1135 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1136 names[z] = (char *)malloc( 100 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1137 /* yes, there is a memory leak here */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1138 sprintf(names[z],"Don't allocate from stack: Item: %d",z);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1139 size = z*100;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1140 sprintf(buffer, "Filename %d",z+1);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1141 if (z == 0 ) thisicon = foldericon;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1142 else thisicon = fileicon;
1306
dbd507f42947 Added dw_debug() logging function which will output a message to the debugging console.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1294
diff changeset
1143 dw_debug("Initial: container: %x containerinfo: %x icon: %x\n", DW_POINTER_TO_INT(container),
dbd507f42947 Added dw_debug() logging function which will output a message to the debugging console.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1294
diff changeset
1144 DW_POINTER_TO_INT(containerinfo), DW_POINTER_TO_INT(thisicon));
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1145 dw_filesystem_set_file(container, containerinfo, z, buffer, thisicon);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1146 dw_filesystem_set_item(container, containerinfo, 0, z, &thisicon);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1147 dw_filesystem_set_item(container, containerinfo, 1, z, &size);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1148
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1149 time.seconds = z+10;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1150 time.minutes = z+10;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1151 time.hours = z+10;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1152 dw_filesystem_set_item(container, containerinfo, 2, z, &time);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1153
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1154 date.day = z+10;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1155 date.month = z+10;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1156 date.year = z+2000;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1157 dw_filesystem_set_item(container, containerinfo, 3, z, &date);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1158
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1159 dw_container_set_row_title(containerinfo, z, names[z]);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1160 }
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1161
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1162 dw_container_insert(container, containerinfo, 3);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1163
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1164 containerinfo = dw_container_alloc(container, 1);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1165 dw_filesystem_set_file(container, containerinfo, 0, strdup("Yikes"), foldericon);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1166 size = 324;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1167 dw_filesystem_set_item(container, containerinfo, 0, 0, &foldericon);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1168 dw_filesystem_set_item(container, containerinfo, 1, 0, &size);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1169 dw_filesystem_set_item(container, containerinfo, 2, 0, &time);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1170 dw_filesystem_set_item(container, containerinfo, 3, 0, &date);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1171 dw_container_set_row_title(containerinfo, 0, strdup("Extra"));
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1172
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1173 dw_container_insert(container, containerinfo, 1);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1174 dw_container_optimize(container);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1175
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1176 container_mle = dw_mle_new( 111 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1177 dw_box_pack_start( containerbox, container_mle, 500, 200, TRUE, TRUE, 0);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1178
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1179 mle_point = dw_mle_import(container_mle, "", -1);
991
64c4c40c5835 Added some MLE tests to dwtest program to make sure MLEs function the same across platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 958
diff changeset
1180 sprintf(buffer, "[%d]", mle_point);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1181 mle_point = dw_mle_import(container_mle, buffer, mle_point);
991
64c4c40c5835 Added some MLE tests to dwtest program to make sure MLEs function the same across platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 958
diff changeset
1182 sprintf(buffer, "[%d]abczxydefijkl", mle_point);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1183 mle_point = dw_mle_import(container_mle, buffer, mle_point);
992
2d80b4dcff9a A few MLE fixes on the Mac... and a slightly updated dwtest for MLE testing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 991
diff changeset
1184 dw_mle_delete(container_mle, 9, 3);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1185 mle_point = dw_mle_import(container_mle, "gh", 12);
1319
03f0bc85e7be Code change to fix llvm-gcc optimization problem on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1306
diff changeset
1186 dw_mle_get_size(container_mle, &newpoint, NULL);
03f0bc85e7be Code change to fix llvm-gcc optimization problem on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1306
diff changeset
1187 mle_point = (int)newpoint;
992
2d80b4dcff9a A few MLE fixes on the Mac... and a slightly updated dwtest for MLE testing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 991
diff changeset
1188 sprintf(buffer, "[%d]\r\n\r\n", mle_point);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1189 mle_point = dw_mle_import(container_mle, buffer, mle_point);
991
64c4c40c5835 Added some MLE tests to dwtest program to make sure MLEs function the same across platforms.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 958
diff changeset
1190 dw_mle_set_cursor(container_mle, mle_point);
1547
2fd9ff675d79 Added autosize code for the MLE on OS/2...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1525
diff changeset
1191 /* connect our event trappers... */
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1192 dw_signal_connect(container, DW_SIGNAL_ITEM_ENTER, DW_SIGNAL_FUNC(item_enter_cb), (void *)container_status);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1193 dw_signal_connect(container, DW_SIGNAL_ITEM_CONTEXT, DW_SIGNAL_FUNC(item_context_cb), (void *)container_status);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1194 dw_signal_connect(container, DW_SIGNAL_ITEM_SELECT, DW_SIGNAL_FUNC(container_select_cb), (void *)container_status);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1195 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
1196 }
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
1197
195
b023d363fc09 Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 193
diff changeset
1198 /* Beep every second */
b023d363fc09 Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 193
diff changeset
1199 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
1200 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1201 dw_beep(200, 200);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1202
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1203 /* Return TRUE so we get called again */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1204 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
1205 }
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
1206
503
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
1207
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
1208 void buttons_add(void)
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
1209 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1210 HWND abutton1,abutton2,calbox;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1211 int i;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1212 char **text;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1213
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1214 /* create a box to pack into the notebook page */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1215 buttonsbox = dw_box_new(BOXVERT, 2);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1216 dw_box_pack_start( notebookbox5, buttonsbox, 25, 200, TRUE, TRUE, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1217 dw_window_set_color(buttonsbox, DW_CLR_RED, DW_CLR_RED);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1218
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1219 calbox = dw_box_new(DW_HORZ, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1220 dw_box_pack_start(notebookbox5, calbox, 500, 200, TRUE, TRUE, 1);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1221 cal = dw_calendar_new(100);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1222 dw_box_pack_start(calbox, cal, 180, 160, TRUE, TRUE, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1223 /*
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1224 dw_calendar_set_date(cal, 2001, 1, 1);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1225 */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1226 /*
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1227 * Create our file toolbar boxes...
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1228 */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1229 buttonboxperm = dw_box_new( BOXVERT, 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1230 dw_box_pack_start( buttonsbox, buttonboxperm, 25, 0, FALSE, TRUE, 2 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1231 dw_window_set_color(buttonboxperm, DW_CLR_WHITE, DW_CLR_WHITE);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1232 // abutton1 = dw_bitmapbutton_new_from_file( "Top Button", 0, FILE_ICON_NAME );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1233 abutton1 = dw_bitmapbutton_new_from_file( "Top Button", 0, "z:\\projects\\RexxGd\\regina\\tile_up.png" );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1234 dw_box_pack_start( buttonboxperm, abutton1, 100, 30, FALSE, FALSE, 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1235 dw_signal_connect( abutton1, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(button_callback), NULL );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1236 dw_box_pack_start( buttonboxperm, 0, 25, 5, FALSE, FALSE, 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1237 abutton2 = dw_bitmapbutton_new_from_file( "Bottom", 0, FOLDER_ICON_NAME );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1238 dw_box_pack_start( buttonsbox, abutton2, 25, 25, FALSE, FALSE, 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1239 dw_signal_connect( abutton2, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(button_callback), NULL );
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1240
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1241 create_button(0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1242 /* make a combobox */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1243 combox = dw_box_new(BOXVERT, 2);
1456
6bf5dc7da45d Added automatic widget size detection a variety of places in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1379
diff changeset
1244 dw_box_pack_start( notebookbox5, combox, 25, 200, TRUE, FALSE, 0);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1245 combobox1 = dw_combobox_new( "fred", 0 ); /* no point in specifying an initial value */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1246 dw_listbox_append( combobox1, "fred" );
1456
6bf5dc7da45d Added automatic widget size detection a variety of places in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1379
diff changeset
1247 dw_box_pack_start( combox, combobox1, -1, -1, TRUE, FALSE, 0);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1248 /*
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1249 dw_window_set_text( combobox, "initial value");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1250 */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1251 dw_signal_connect( combobox1, DW_SIGNAL_LIST_SELECT, DW_SIGNAL_FUNC(combobox_select_event_callback), NULL );
602
489a684af1bb Add some more test
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 600
diff changeset
1252 #if 0
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1253 /* add LOTS of items */
1306
dbd507f42947 Added dw_debug() logging function which will output a message to the debugging console.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1294
diff changeset
1254 dw_debug("before appending 100 items to combobox using dw_listbox_append()\n");
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1255 for( i = 0; i < 100; i++ )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1256 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1257 sprintf( buf, "item %d", i);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1258 dw_listbox_append( combobox1, buf );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1259 }
1306
dbd507f42947 Added dw_debug() logging function which will output a message to the debugging console.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1294
diff changeset
1260 dw_debug("after appending 100 items to combobox\n");
602
489a684af1bb Add some more test
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 600
diff changeset
1261 #endif
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1262
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1263 combobox2 = dw_combobox_new( "joe", 0 ); /* no point in specifying an initial value */
1456
6bf5dc7da45d Added automatic widget size detection a variety of places in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1379
diff changeset
1264 dw_box_pack_start( combox, combobox2, -1, -1, TRUE, FALSE, 0);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1265 /*
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1266 dw_window_set_text( combobox, "initial value");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1267 */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1268 dw_signal_connect( combobox2, DW_SIGNAL_LIST_SELECT, DW_SIGNAL_FUNC(combobox_select_event_callback), NULL );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1269 /* add LOTS of items */
1306
dbd507f42947 Added dw_debug() logging function which will output a message to the debugging console.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1294
diff changeset
1270 dw_debug("before appending 500 items to combobox using dw_listbox_list_append()\n");
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1271 text = (char **)malloc(500*sizeof(char *));
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1272 for( i = 0; i < 500; i++ )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1273 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1274 text[i] = (char *)malloc( 50 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1275 sprintf( text[i], "item %d", i);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1276 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1277 dw_listbox_list_append( combobox2, text, 500 );
1306
dbd507f42947 Added dw_debug() logging function which will output a message to the debugging console.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1294
diff changeset
1278 dw_debug("after appending 500 items to combobox\n");
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1279 for( i = 0; i < 500; i++ )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1280 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1281 free(text[i]);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1282 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1283 free(text);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1284 /* now insert a couple of items */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1285 dw_listbox_insert( combobox2, "inserted item 2", 2 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1286 dw_listbox_insert( combobox2, "inserted item 5", 5 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1287 /* make a spinbutton */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1288 spinbutton = dw_spinbutton_new( "", 0 ); /* no point in specifying text */
1456
6bf5dc7da45d Added automatic widget size detection a variety of places in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1379
diff changeset
1289 dw_box_pack_start( combox, spinbutton, -1, -1, TRUE, FALSE, 0);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1290 dw_spinbutton_set_limits( spinbutton, 100, 1 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1291 dw_spinbutton_set_pos( spinbutton, 30 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1292 dw_signal_connect( spinbutton, DW_SIGNAL_VALUE_CHANGED, DW_SIGNAL_FUNC(spinbutton_valuechanged_callback), NULL );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1293 /* make a slider */
1190
76262040ed5f Added DW_PERCENT_INDETERMINATE which can be passed to dw_percent_set_pos() to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1186
diff changeset
1294 slider = dw_slider_new( FALSE, 11, 0 ); /* no point in specifying text */
1456
6bf5dc7da45d Added automatic widget size detection a variety of places in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1379
diff changeset
1295 dw_box_pack_start( combox, slider, -1, -1, TRUE, FALSE, 0);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1296 dw_signal_connect( slider, DW_SIGNAL_VALUE_CHANGED, DW_SIGNAL_FUNC(slider_valuechanged_callback), NULL );
1190
76262040ed5f Added DW_PERCENT_INDETERMINATE which can be passed to dw_percent_set_pos() to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1186
diff changeset
1297 /* make a percent */
76262040ed5f Added DW_PERCENT_INDETERMINATE which can be passed to dw_percent_set_pos() to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1186
diff changeset
1298 percent = dw_percent_new( 0 );
1456
6bf5dc7da45d Added automatic widget size detection a variety of places in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1379
diff changeset
1299 dw_box_pack_start( combox, percent, -1, -1, TRUE, FALSE, 0);
503
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
1300 }
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
1301
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
1302 void create_button( int redraw)
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
1303 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1304 HWND abutton1;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1305 filetoolbarbox = dw_box_new( BOXVERT, 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1306 dw_box_pack_start( buttonboxperm, filetoolbarbox, 0, 0, TRUE, TRUE, 0 );
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1307
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1308 abutton1 = dw_bitmapbutton_new_from_file( "Should be under Top button", 0, "junk" );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1309 dw_box_pack_start( filetoolbarbox, abutton1, 25, 25, FALSE, FALSE, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1310 dw_signal_connect( abutton1, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(change_color_red_callback), NULL );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1311 dw_box_pack_start( filetoolbarbox, 0, 25, 5, FALSE, FALSE, 0 );
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1312
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1313 abutton1 = dw_bitmapbutton_new_from_file( "Should be under Top button", 0, "junk" );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1314 dw_box_pack_start( filetoolbarbox, abutton1, 25, 25, FALSE, FALSE, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1315 dw_signal_connect( abutton1, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(change_color_yellow_callback), NULL );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1316 dw_box_pack_start( filetoolbarbox, 0, 25, 5, FALSE, FALSE, 0 );
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1317
1090
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
1318 abutton1 = dw_bitmapbutton_new_from_data( "A button from data", 0, folder_ico, 1718 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1319 dw_box_pack_start( filetoolbarbox, abutton1, 25, 25, FALSE, FALSE, 0);
1190
76262040ed5f Added DW_PERCENT_INDETERMINATE which can be passed to dw_percent_set_pos() to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1186
diff changeset
1320 dw_signal_connect( abutton1, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(percent_button_box_callback), NULL );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1321 dw_box_pack_start( filetoolbarbox, 0, 25, 5, FALSE, FALSE, 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1322 if ( redraw )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1323 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1324 dw_window_redraw( filetoolbarbox );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1325 dw_window_redraw( mainwindow );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1326 }
503
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
1327 }
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
1328
515
c3c5d8e36aa3 Implemented MDI Window in Window code on GTK 2.x.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 514
diff changeset
1329 void mdi_add(void)
c3c5d8e36aa3 Implemented MDI Window in Window code on GTK 2.x.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 514
diff changeset
1330 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1331 HWND mdibox, mdi, mdi1w, mdi1box, ef, mdi2w, mdi2box, bb;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1332
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1333 /* create a box to pack into the notebook page */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1334 mdibox = dw_box_new(DW_HORZ, 0);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1335
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1336 dw_box_pack_start(notebookbox6, mdibox, 500, 200, TRUE, TRUE, 1);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1337
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1338 /* now a mdi under this box */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1339 mdi = dw_mdi_new(333);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1340 dw_box_pack_start(mdibox, mdi, 500, 200, TRUE, TRUE, 2);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1341
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1342 mdi1w = dw_window_new(mdi, "MDI1", flStyle | DW_FCF_SIZEBORDER | DW_FCF_MINMAX);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1343 mdi1box = dw_box_new(DW_HORZ, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1344 dw_box_pack_start(mdi1w, mdi1box, 0, 0, TRUE, TRUE, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1345 ef = dw_entryfield_new("", 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1346 dw_box_pack_start(mdi1box, ef, 100, 20, FALSE, FALSE, 4);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1347 dw_window_set_size(mdi1w, 200, 100);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1348 dw_window_show(mdi1w);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1349
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1350 mdi2w = dw_window_new(mdi, "MDI2", flStyle | DW_FCF_SIZEBORDER | DW_FCF_MINMAX);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1351 mdi2box = dw_box_new(DW_HORZ, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1352 dw_box_pack_start(mdi2w, mdi2box, 0, 0, TRUE, TRUE, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1353 ef = dw_entryfield_new( "", 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1354 dw_box_pack_start(mdi2box, ef, 150, 30, FALSE, FALSE, 4);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1355 bb = dw_button_new("Browse", 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1356 dw_box_pack_start(mdi2box, bb, 60, 30, FALSE, FALSE, 4);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1357 dw_window_set_size(mdi2w, 200, 200);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1358 dw_window_show(mdi2w);
620
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
1359 }
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
1360
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
1361 void menu_add(void)
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
1362 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1363 HMENUI menuitem,menu;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1364
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1365 mainmenubar = dw_menubar_new( mainwindow );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1366 /* add menus to the menubar */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1367 menu = dw_menu_new( 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1368 menuitem = dw_menu_append_item( menu, "~Quit", 1019, 0, TRUE, FALSE, 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1369 dw_signal_connect( menuitem, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(exit_callback), (void *)mainwindow);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1370 /*
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1371 * Add the "File" menu to the menubar...
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1372 */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1373 dw_menu_append_item( mainmenubar, "~File", 1010, 0, TRUE, FALSE, menu );
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1374
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1375 changeable_menu = dw_menu_new( 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1376 checkable_menuitem = dw_menu_append_item( changeable_menu, "~Checkable Menu Item", CHECKABLE_MENUITEMID, 0, TRUE, TRUE, 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1377 dw_signal_connect( checkable_menuitem, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(menu_callback), (void *)"checkable");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1378 noncheckable_menuitem = dw_menu_append_item( changeable_menu, "~Non-checkable Menu Item", NONCHECKABLE_MENUITEMID, 0, TRUE, FALSE, 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1379 dw_signal_connect( noncheckable_menuitem, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(menu_callback), (void *)"non-checkable");
1557
030e9bddc1c9 Fixed some potential Objective-C memory leaks on Mac reported by XCode 4.2.1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1547
diff changeset
1380 dw_menu_append_item( changeable_menu, "~Disabled menu Item", 2003, DW_MIS_DISABLED|DW_MIS_CHECKED, TRUE, TRUE, 0 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1381 /* seperator */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1382 dw_menu_append_item( changeable_menu, DW_MENU_SEPARATOR, 3999, 0, TRUE, FALSE, 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1383 menuitem = dw_menu_append_item( changeable_menu, "~Menu Items Disabled", 2009, 0, TRUE, TRUE, 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1384 dw_signal_connect( menuitem, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(menutoggle_callback), (void *)NULL);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1385 /*
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1386 * Add the "Menu" menu to the menubar...
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1387 */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1388 dw_menu_append_item( mainmenubar, "~Menu", 1020, 0, TRUE, FALSE, changeable_menu );
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1389
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1390 menu = dw_menu_new( 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1391 menuitem = dw_menu_append_item( menu, "~About", 1091, 0, TRUE, FALSE, 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1392 dw_signal_connect( menuitem, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(helpabout_callback), (void *)mainwindow);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1393 /*
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1394 * Add the "Help" menu to the menubar...
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1395 */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1396 dw_menu_append_item( mainmenubar, "~Help", 1090, 0, TRUE, FALSE, menu );
515
c3c5d8e36aa3 Implemented MDI Window in Window code on GTK 2.x.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 514
diff changeset
1397 }
c3c5d8e36aa3 Implemented MDI Window in Window code on GTK 2.x.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 514
diff changeset
1398
774
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
1399 int DWSIGNAL scrollbox_button_callback(HWND window, void *data)
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
1400 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1401 int pos, range;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1402
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1403 pos = dw_scrollbox_get_pos( scrollbox, DW_VERT );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1404 range = dw_scrollbox_get_range( scrollbox, DW_VERT );
1306
dbd507f42947 Added dw_debug() logging function which will output a message to the debugging console.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1294
diff changeset
1405 dw_debug("Pos %d Range %d\n", pos, range );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1406 return 0;
774
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
1407 }
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
1408
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
1409 void scrollbox_add(void)
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
1410 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1411 HWND tmpbox,abutton1;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1412 char buf[100];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1413 int i;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1414
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1415 /* create a box to pack into the notebook page */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1416 scrollbox = dw_scrollbox_new(DW_VERT, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1417 dw_box_pack_start(notebookbox8, scrollbox, 0, 0, TRUE, TRUE, 1);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1418
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1419 abutton1 = dw_button_new( "Show Adjustments", 0 );
1456
6bf5dc7da45d Added automatic widget size detection a variety of places in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1379
diff changeset
1420 dw_box_pack_start( scrollbox, abutton1, -1, 30, FALSE, FALSE, 0 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1421 dw_signal_connect( abutton1, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(scrollbox_button_callback), NULL );
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1422
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1423 for ( i = 0; i < MAX_WIDGETS; i++ )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1424 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1425 tmpbox = dw_box_new( DW_HORZ, 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1426 dw_box_pack_start( scrollbox, tmpbox, 0, 24, TRUE, FALSE, 2);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1427 sprintf( buf, "Label %d", i );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1428 labelarray[i] = dw_text_new( buf , 0 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1429 dw_box_pack_start( tmpbox, labelarray[i], 0, 20, TRUE, FALSE, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1430 sprintf( buf, "Entry %d", i );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1431 entryarray[i] = dw_entryfield_new( buf , i );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1432 dw_box_pack_start( tmpbox, entryarray[i], 0, 20, TRUE, FALSE, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1433 }
774
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
1434 }
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
1435
1200
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1436 /* Section for thread/event test */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1437 HWND threadmle, startbutton;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1438 HMTX mutex;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1439 HEV workevent, controlevent;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1440 int finished = FALSE;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1441 int ready = 0;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1442 #define BUF_SIZE 1024
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1443 void DWSIGNAL run_thread(void *data);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1444 void DWSIGNAL control_thread(void *data);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1445
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1446 void update_mle(char *text, int lock)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1447 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1448 static unsigned int pos = 0;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1449
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1450 /* Protect pos from being changed by different threads */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1451 if(lock)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1452 dw_mutex_lock(mutex);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1453 pos = dw_mle_import(threadmle, text, pos);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1454 dw_mle_set_cursor(threadmle, pos);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1455 if(lock)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1456 dw_mutex_unlock(mutex);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1457 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1458
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1459 int DWSIGNAL start_threads_button_callback(HWND window, void *data)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1460 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1461 dw_window_disable(startbutton);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1462 dw_mutex_lock(mutex);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1463 controlevent = dw_event_new();
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1464 dw_event_reset(workevent);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1465 finished = FALSE;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1466 ready = 0;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1467 update_mle("Starting thread 1\r\n", FALSE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1468 dw_thread_new(DW_SIGNAL_FUNC(run_thread), DW_INT_TO_POINTER(1), 10000);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1469 update_mle("Starting thread 2\r\n", FALSE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1470 dw_thread_new(DW_SIGNAL_FUNC(run_thread), DW_INT_TO_POINTER(2), 10000);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1471 update_mle("Starting thread 3\r\n", FALSE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1472 dw_thread_new(DW_SIGNAL_FUNC(run_thread), DW_INT_TO_POINTER(3), 10000);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1473 update_mle("Starting thread 4\r\n", FALSE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1474 dw_thread_new(DW_SIGNAL_FUNC(run_thread), DW_INT_TO_POINTER(4), 10000);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1475 update_mle("Starting control thread\r\n", FALSE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1476 dw_thread_new(DW_SIGNAL_FUNC(control_thread), DW_INT_TO_POINTER(0), 10000);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1477 dw_mutex_unlock(mutex);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1478 return 0;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1479 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1480
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1481 void thread_add(void)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1482 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1483 HWND tmpbox;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1484
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1485 /* create a box to pack into the notebook page */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1486 tmpbox = dw_box_new(DW_VERT, 0);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1487 dw_box_pack_start(notebookbox9, tmpbox, 0, 0, TRUE, TRUE, 1);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1488
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1489 startbutton = dw_button_new( "Start Threads", 0 );
1456
6bf5dc7da45d Added automatic widget size detection a variety of places in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1379
diff changeset
1490 dw_box_pack_start( tmpbox, startbutton, -1, 30, FALSE, FALSE, 0 );
1200
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1491 dw_signal_connect( startbutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(start_threads_button_callback), NULL );
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1492
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1493 /* Create the base threading components */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1494 threadmle = dw_mle_new(0);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1495 dw_box_pack_start(tmpbox, threadmle, 1, 1, TRUE, TRUE, 0);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1496 mutex = dw_mutex_new();
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1497 workevent = dw_event_new();
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1498 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1499
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1500 void DWSIGNAL run_thread(void *data)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1501 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1502 int threadnum = DW_POINTER_TO_INT(data);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1503 char buf[BUF_SIZE];
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1504
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1505 sprintf(buf, "Thread %d started.\r\n", threadnum);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1506 update_mle(buf, TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1507
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1508 /* Increment the ready count while protected by mutex */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1509 dw_mutex_lock(mutex);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1510 ready++;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1511 /* If all 4 threads have incrememted the ready count...
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1512 * Post the control event semaphore so things will get started.
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1513 */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1514 if(ready == 4)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1515 dw_event_post(controlevent);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1516 dw_mutex_unlock(mutex);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1517
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1518 while(!finished)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1519 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1520 int result = dw_event_wait(workevent, 2000);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1521
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1522 if(result == DW_ERROR_TIMEOUT)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1523 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1524 sprintf(buf, "Thread %d timeout waiting for event.\r\n", threadnum);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1525 update_mle(buf, TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1526 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1527 else if(result == DW_ERROR_NONE)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1528 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1529 sprintf(buf, "Thread %d doing some work.\r\n", threadnum);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1530 update_mle(buf, TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1531 /* Pretend to do some work */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1532 dw_main_sleep(1000 * threadnum);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1533
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1534 /* Increment the ready count while protected by mutex */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1535 dw_mutex_lock(mutex);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1536 ready++;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1537 sprintf(buf, "Thread %d work done. ready=%d", threadnum, ready);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1538 /* If all 4 threads have incrememted the ready count...
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1539 * Post the control event semaphore so things will get started.
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1540 */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1541 if(ready == 4)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1542 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1543 dw_event_post(controlevent);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1544 strcat(buf, " Control posted.");
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1545 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1546 dw_mutex_unlock(mutex);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1547 strcat(buf, "\r\n");
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1548 update_mle(buf, TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1549 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1550 else
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1551 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1552 sprintf(buf, "Thread %d error %d.\r\n", threadnum, result);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1553 update_mle(buf, TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1554 dw_main_sleep(10000);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1555 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1556 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1557 sprintf(buf, "Thread %d finished.\r\n", threadnum);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1558 update_mle(buf, TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1559 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1560
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1561 void DWSIGNAL control_thread(void *data)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1562 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1563 int inprogress = 5;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1564 char buf[BUF_SIZE];
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1565
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1566 while(inprogress)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1567 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1568 int result = dw_event_wait(controlevent, 2000);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1569
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1570 if(result == DW_ERROR_TIMEOUT)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1571 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1572 update_mle("Control thread timeout waiting for event.\r\n", TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1573 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1574 else if(result == DW_ERROR_NONE)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1575 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1576 /* Reset the control event */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1577 dw_event_reset(controlevent);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1578 ready = 0;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1579 sprintf(buf,"Control thread starting worker threads. Inprogress=%d\r\n", inprogress);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1580 update_mle(buf, TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1581 /* Start the work threads */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1582 dw_event_post(workevent);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1583 dw_main_sleep(100);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1584 /* Reset the work event */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1585 dw_event_reset(workevent);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1586 inprogress--;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1587 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1588 else
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1589 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1590 sprintf(buf, "Control thread error %d.\r\n", result);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1591 update_mle(buf, TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1592 dw_main_sleep(10000);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1593 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1594 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1595 /* Tell the other threads we are done */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1596 finished = TRUE;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1597 dw_event_post(workevent);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1598 /* Close the control event */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1599 dw_event_close(&controlevent);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1600 update_mle("Control thread finished.\r\n", TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1601 dw_window_enable(startbutton);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1602 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1603
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1604
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
1605 /*
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
1606 * 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
1607 */
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
1608 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
1609 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1610 ULONG notebookpage1;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1611 ULONG notebookpage2;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1612 ULONG notebookpage3;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1613 ULONG notebookpage4;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1614 ULONG notebookpage5;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1615 ULONG notebookpage6;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1616 ULONG notebookpage7;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1617 ULONG notebookpage8;
1200
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1618 ULONG notebookpage9;
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1619
1560
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1620 /* Initialize the Dynamic Windows engine */
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1621 dw_init(TRUE, argc, argv);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1622
1560
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1623 /* Create our window */
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1624 mainwindow = dw_window_new( HWND_DESKTOP, "dwindows test", flStyle | DW_FCF_SIZEBORDER | DW_FCF_MINMAX);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1625 dw_window_set_icon(mainwindow, fileicon);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1626
1465
0f9c6f7636db Menus don't need to be added after packing a box into a window anymore...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1463
diff changeset
1627 menu_add();
0f9c6f7636db Menus don't need to be added after packing a box into a window anymore...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1463
diff changeset
1628
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1629 notebookbox = dw_box_new( BOXVERT, 5 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1630 dw_box_pack_start( mainwindow, notebookbox, 0, 0, TRUE, TRUE, 0);
1220
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
1631
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
1632 foldericon = dw_icon_load_from_file( FOLDER_ICON_NAME );
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
1633 fileicon = dw_icon_load_from_file( FILE_ICON_NAME );
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
1634
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1635 notebook = dw_notebook_new( 1, TRUE );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1636 dw_box_pack_start( notebookbox, notebook, 100, 100, TRUE, TRUE, 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1637 dw_signal_connect(notebook, DW_SIGNAL_SWITCH_PAGE, DW_SIGNAL_FUNC(switch_page_cb), NULL);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1638
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1639 notebookbox1 = dw_box_new( BOXVERT, 5 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1640 notebookpage1 = dw_notebook_page_new( notebook, 0, TRUE );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1641 dw_notebook_pack( notebook, notebookpage1, notebookbox1 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1642 dw_notebook_page_set_text( notebook, notebookpage1, "buttons and entry");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1643 archive_add();
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1644
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1645 notebookbox2 = dw_box_new( BOXVERT, 5 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1646 notebookpage2 = dw_notebook_page_new( notebook, 1, FALSE );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1647 dw_notebook_pack( notebook, notebookpage2, notebookbox2 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1648 dw_notebook_page_set_text( notebook, notebookpage2, "render");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1649 text_add();
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1650
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1651 notebookbox3 = dw_box_new( BOXVERT, 5 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1652 notebookpage3 = dw_notebook_page_new( notebook, 1, FALSE );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1653 dw_notebook_pack( notebook, notebookpage3, notebookbox3 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1654 dw_notebook_page_set_text( notebook, notebookpage3, "tree");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1655 tree_add();
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1656
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1657 notebookbox4 = dw_box_new( BOXVERT, 5 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1658 notebookpage4 = dw_notebook_page_new( notebook, 1, FALSE );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1659 dw_notebook_pack( notebook, notebookpage4, notebookbox4 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1660 dw_notebook_page_set_text( notebook, notebookpage4, "container");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1661 container_add();
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1662
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1663 notebookbox5 = dw_box_new( BOXVERT, 5 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1664 notebookpage5 = dw_notebook_page_new( notebook, 1, FALSE );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1665 dw_notebook_pack( notebook, notebookpage5, notebookbox5 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1666 dw_notebook_page_set_text( notebook, notebookpage5, "buttons");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1667 buttons_add();
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1668
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1669 notebookbox6 = dw_box_new( BOXVERT, 5 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1670 notebookpage6 = dw_notebook_page_new( notebook, 1, FALSE );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1671 dw_notebook_pack( notebook, notebookpage6, notebookbox6 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1672 dw_notebook_page_set_text( notebook, notebookpage6, "mdi");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1673 mdi_add();
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1674
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1675 notebookbox7 = dw_box_new( BOXVERT, 6 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1676 notebookpage7 = dw_notebook_page_new( notebook, 1, FALSE );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1677 dw_notebook_pack( notebook, notebookpage7, notebookbox7 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1678 dw_notebook_page_set_text( notebook, notebookpage7, "html");
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1679
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1680 rawhtml = dw_html_new(1001);
1354
1f22addc2722 Changed the behavior of dw_html_new() to return NULL on failure like the documentation indicates...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1343
diff changeset
1681 if(rawhtml)
1f22addc2722 Changed the behavior of dw_html_new() to return NULL on failure like the documentation indicates...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1343
diff changeset
1682 {
1f22addc2722 Changed the behavior of dw_html_new() to return NULL on failure like the documentation indicates...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1343
diff changeset
1683 dw_box_pack_start( notebookbox7, rawhtml, 0, 100, TRUE, FALSE, 0);
1f22addc2722 Changed the behavior of dw_html_new() to return NULL on failure like the documentation indicates...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1343
diff changeset
1684 dw_html_raw(rawhtml, "<html><body><center><h1>dwtest</h1></center></body></html>");
1f22addc2722 Changed the behavior of dw_html_new() to return NULL on failure like the documentation indicates...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1343
diff changeset
1685 html = dw_html_new(1002);
1f22addc2722 Changed the behavior of dw_html_new() to return NULL on failure like the documentation indicates...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1343
diff changeset
1686 dw_box_pack_start( notebookbox7, html, 0, 100, TRUE, TRUE, 0);
1f22addc2722 Changed the behavior of dw_html_new() to return NULL on failure like the documentation indicates...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1343
diff changeset
1687 dw_html_url(html, "http://dwindows.netlabs.org");
1f22addc2722 Changed the behavior of dw_html_new() to return NULL on failure like the documentation indicates...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1343
diff changeset
1688 }
1f22addc2722 Changed the behavior of dw_html_new() to return NULL on failure like the documentation indicates...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1343
diff changeset
1689 else
1f22addc2722 Changed the behavior of dw_html_new() to return NULL on failure like the documentation indicates...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1343
diff changeset
1690 {
1f22addc2722 Changed the behavior of dw_html_new() to return NULL on failure like the documentation indicates...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1343
diff changeset
1691 html = dw_text_new("HTML widget not available.", 0);
1f22addc2722 Changed the behavior of dw_html_new() to return NULL on failure like the documentation indicates...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1343
diff changeset
1692 dw_box_pack_start( notebookbox7, html, 0, 100, TRUE, TRUE, 0);
1f22addc2722 Changed the behavior of dw_html_new() to return NULL on failure like the documentation indicates...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1343
diff changeset
1693 }
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1694
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1695 notebookbox8 = dw_box_new( BOXVERT, 7 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1696 notebookpage8 = dw_notebook_page_new( notebook, 1, FALSE );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1697 dw_notebook_pack( notebook, notebookpage8, notebookbox8 );
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1698 dw_notebook_page_set_text( notebook, notebookpage8, "scrollbox");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1699 scrollbox_add();
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1700
1200
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1701 notebookbox9 = dw_box_new( BOXVERT, 8 );
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1702 notebookpage9 = dw_notebook_page_new( notebook, 1, FALSE );
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1703 dw_notebook_pack( notebook, notebookpage9, notebookbox9 );
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1704 dw_notebook_page_set_text( notebook, notebookpage9, "thread/event");
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1705 thread_add();
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1706
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1707 dw_signal_connect(mainwindow, DW_SIGNAL_DELETE, DW_SIGNAL_FUNC(exit_callback), (void *)mainwindow);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1708 timerid = dw_timer_connect(2000, DW_SIGNAL_FUNC(timer_callback), 0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1709 dw_window_set_size(mainwindow, 640, 520);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1710 dw_window_show(mainwindow);
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1711
1560
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1712 /* Now that the window is created and shown...
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1713 * run the main loop until we get dw_main_quit()
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1714 */
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1715 dw_main();
1049
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1716
1560
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1717 /* Now that the loop is done we can cleanup */
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1718 dw_taskbar_delete(textbox1, fileicon);
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1719 dw_window_destroy(mainwindow);
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1720
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1721 dw_debug("dwtest exiting...\n");
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1722 /* Call dw_exit() to shutdown the Dynamic Windows engine */
1559
bc3a11fe9a46 Don't use _dw_pool_drain() in dw_exit() on Mac... that drains and recreates the pool.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1557
diff changeset
1723 dw_exit(0);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1724 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
1725 }