annotate dwtest.c @ 2077:9101babfc421

Bump the version to 3.1 and update the readme with some of the changes since 3.0 and the notes for the new features. Readme will be updated with a more extensive list of changes shortly.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Mon, 25 May 2020 03:17:57 +0000
parents 2c2530f8cbef
children 24875681eec5
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"
2026
a9809db1ddbf Last change also allows removing Windows specific #ifdef.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2025
diff changeset
10 /* For snprintf, strdup etc on old Windows SDK */
2025
211330337f2d Include "dwcompat.h" in the test program for the system macros.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2010
diff changeset
11 #include "dwcompat.h"
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
12
219
79968cf0f3b3 Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 218
diff changeset
13 /* Select a fixed width font for our platform */
79968cf0f3b3 Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 218
diff changeset
14 #ifdef __OS2__
79968cf0f3b3 Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 218
diff changeset
15 #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
16 #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
17 #define FILE_ICON_NAME "os2\\file"
219
79968cf0f3b3 Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 218
diff changeset
18 #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
19 #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
20 #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
21 #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
22 #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
23 #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
24 #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
25 #define FILE_ICON_NAME "mac/file"
219
79968cf0f3b3 Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 218
diff changeset
26 #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
27 #define FIXEDFONT "10.monospace"
297
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
28 #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
29 #define FILE_ICON_NAME "gtk/file"
219
79968cf0f3b3 Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 218
diff changeset
30 #else
79968cf0f3b3 Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 218
diff changeset
31 #define FIXEDFONT "fixed"
297
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
32 #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
33 #define FILE_ICON_NAME "gtk/file"
219
79968cf0f3b3 Choose a nice font. ;)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 218
diff changeset
34 #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
35
774
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
36 #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
37
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 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
39 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
40
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
41 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
42
602
489a684af1bb Add some more test
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 600
diff changeset
43 int iteration = 0;
774
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
44 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
45
1090
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
46 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
47 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
48 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
49 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
50 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
51 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
52 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
53 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
54 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
55 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
56 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
57 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
58 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
59 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
60 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
61 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
62 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
63 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
64 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
65 };
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
66
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
67 HWND mainwindow,
1753
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
68 copypastefield,
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
69 entryfield,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
70 checkable_menuitem,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
71 noncheckable_menuitem,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
72 cursortogglebutton,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
73 colorchoosebutton,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
74 okbutton,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
75 cancelbutton,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
76 lbbox,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
77 combox,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
78 combobox1,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
79 combobox2,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
80 spinbutton,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
81 slider,
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
82 percent,
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
83 notebookbox,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
84 notebookbox1,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
85 notebookbox2,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
86 notebookbox3,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
87 notebookbox4,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
88 notebookbox5,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
89 notebookbox6,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
90 notebookbox7,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
91 notebookbox8,
1200
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
92 notebookbox9,
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
93 html,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
94 rawhtml,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
95 notebook,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
96 vscrollbar,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
97 hscrollbar,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
98 status1,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
99 status2,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
100 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
101 imagexspin,
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
102 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
103 imagestretchcheck,
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
104 container_status,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
105 tree_status,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
106 stext,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
107 tree,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
108 container,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
109 container_mle,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
110 pagebox,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
111 containerbox,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
112 textbox1, textbox2, textboxA,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
113 gap_box,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
114 buttonbox,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
115 buttonsbox,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
116 buttonboxperm,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
117 cal,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
118 scrollbox,
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
119 labelarray[MAX_WIDGETS],
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
120 entryarray[MAX_WIDGETS],
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
121 filetoolbarbox;
620
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
122
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
123 HMENUI mainmenubar,changeable_menu;
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
124 #define CHECKABLE_MENUITEMID 2001
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
125 #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
126
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
127 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
128
620
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
129
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
130 int menu_enabled = 1;
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
131
957
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
132 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
133 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
134 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
135 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
136
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
137 int font_width = 8;
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
138 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
139 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
140 char *current_file = NULL;
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
141 int timerid;
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
142 int num_lines=0;
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
143 int max_linewidth=0;
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
144 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
145 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
146 int render_type = 0;
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
147
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
148 FILE *fp=NULL;
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
149 char **lp;
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
150
297
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
151 char *resolve_keyname( int vk )
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
152 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
153 char *keyname;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
154 switch(vk)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
155 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
156 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
157 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
158 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
159 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
160 /* 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
161 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
162 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
163 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
164 /* 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
165 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
166 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
167 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
168 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
169 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
170 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
171 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
172 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
173 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
174 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
175 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
176 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
177 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
178 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
179 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
180 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
181 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
182 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
183 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
184 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
185 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
186 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
187 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
188 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
189 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
190 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
191 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
192 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
193 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
194 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
195 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
196 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
197 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
198 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
199 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
200 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
201 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
202 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
203 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
204 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
205 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
206 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
207 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
208 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
209 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
210 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
211 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
212 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
213 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
214 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
215 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
216 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
217 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
218 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
219 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
220 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
221 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
222 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
223 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
224 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
225 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
226 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
227 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
228 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
229 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
230 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
231 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
232 /* 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
233 /* 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
234 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
235 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
236 return keyname;
297
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
237 }
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
238
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
239 char *resolve_keymodifiers( int mask )
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
240 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
241 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
242 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
243 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
244 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
245 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
246 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
247 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
248 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
249 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
250 return "KC_SHIFT";
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
251 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
252 return "KC_CTRL";
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
253 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
254 return "KC_ALT";
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
255 else return "none";
297
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
256 }
5414d3d582e4 Add icons to tree items on page three.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 293
diff changeset
257
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
258 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
259
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
260 /* 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
261 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
262 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
263 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
264 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
265 HPIXMAP hpm;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
266 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
267
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
268 if ( hwnd == textbox1 )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
269 hpm = text1pm;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
270 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
271 hpm = text2pm;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
272 else
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
273 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
274
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
275 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
276 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
277
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
278 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
279 dw_flush();
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
280 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
281 else
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
282 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
283 update_render();
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
284 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
285 return TRUE;
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
286 }
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
287
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
288 void read_file( void )
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
289 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
290 int i,len;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
291 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
292 if ( fp )
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
293 {
1090
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
294 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
295 /* 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
296 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
297 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
298 {
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
299 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
300 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
301 break;
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
302 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
303 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
304 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
305 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
306 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
307 }
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
308 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
309 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
310 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
311 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
312 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
313 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
314 }
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
315 }
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 /* 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
318 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
319 {
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
320 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
321 char buf[10];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
322 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
323 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
324
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
325 if ( current_file )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
326 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
327 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
328 if(!hpma)
1684
31dd366acfc8 Fixed calculating the GDI+ ratio based on the DPI on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1667
diff changeset
329 dw_draw_rect(0, text1pm, DW_DRAW_FILL | DW_DRAW_NOAA, 0, 0, (int)DW_PIXMAP_WIDTH(text1pm), (int)DW_PIXMAP_HEIGHT(text1pm));
31dd366acfc8 Fixed calculating the GDI+ ratio based on the DPI on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1667
diff changeset
330 dw_draw_rect(0, hpm, DW_DRAW_FILL | DW_DRAW_NOAA, 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
331
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 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
333 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
334 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
335 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
336 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
337 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
338 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
339 {
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
340 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
341 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
342 }
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
343 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
344 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
345 }
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
346 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
347 {
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
348 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
349 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
350 }
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
351 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
352 }
380
fcb52d773ed2 Implement tests for setting background color on render boxes.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 378
diff changeset
353
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
354 /* 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
355 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
356 {
1137
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
357 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
358 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
359 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
360 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
361 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
362 int y[7] = { 50, 50, 20, 70, 120, 90, 90 };
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
363
957
beed3e7f9d4b Fixes to flip pixmaps when loading from file or data on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 955
diff changeset
364 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
365 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
366 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
367
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
368 dw_color_foreground_set(DW_CLR_WHITE);
1684
31dd366acfc8 Fixed calculating the GDI+ ratio based on the DPI on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1667
diff changeset
369 dw_draw_rect(window, pixmap, DW_DRAW_FILL | DW_DRAW_NOAA, 0, 0, width, height);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
370 dw_color_foreground_set(DW_CLR_DARKPINK);
1684
31dd366acfc8 Fixed calculating the GDI+ ratio based on the DPI on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1667
diff changeset
371 dw_draw_rect(window, pixmap, DW_DRAW_FILL | DW_DRAW_NOAA, 10, 10, width - 20, height - 20);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
372 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
373 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
374 dw_draw_text(window, pixmap, 10, 10, "This should be aligned with the edges.");
1613
fd3b7784ab53 Initial commit for GDI+ anti-aliased drawing. Code currently does not work,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1601
diff changeset
375 dw_color_foreground_set(DW_CLR_YELLOW);
fd3b7784ab53 Initial commit for GDI+ anti-aliased drawing. Code currently does not work,
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1601
diff changeset
376 dw_draw_line(window, pixmap, width - 10, 10, 10, height - 10);
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
377 dw_color_foreground_set(DW_CLR_BLUE);
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
378 dw_draw_polygon(window, pixmap, DW_DRAW_FILL, 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
379 dw_color_foreground_set(DW_CLR_BLACK);
1684
31dd366acfc8 Fixed calculating the GDI+ ratio based on the DPI on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1667
diff changeset
380 dw_draw_rect(window, pixmap, DW_DRAW_FILL | DW_DRAW_NOAA, 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
381 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
382 /* 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
383 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
384 /* 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
385 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
386 /* 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
387 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
388 /* 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
389 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
390 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
391 {
1243
c191a562c14a Added new dw_pixmap_stretch_bitblt() function on Windows and OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1242
diff changeset
392 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
393 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
394 else
c191a562c14a Added new dw_pixmap_stretch_bitblt() function on Windows and OS/2.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1242
diff changeset
395 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
396 }
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
397
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
398 /* 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
399 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
400 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
401 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
402 }
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
403 }
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
404
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
405 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
406 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
407 switch(render_type)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
408 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
409 case 0:
1137
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
410 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
411 break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
412 case 1:
1137
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
413 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
414 break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
415 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
416 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
417 break;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
418 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
419 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
420
1137
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
421 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
422 {
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
423 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
424 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
425 {
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 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
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 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
429 {
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 /* 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
431 int fheight, fwidth;
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
432
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
433 /* 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
434 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
435 {
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 int nrows;
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
437
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
438 /* 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
439 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
440 nrows = (int)(DW_PIXMAP_HEIGHT(pixmap) / fheight);
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
441
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
442 /* 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
443 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
444 }
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 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
446 {
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 /* 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
448 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
449 int posx, posy;
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
450
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
451 dw_font_text_extents_get(0, pixmap, text, &fwidth, &fheight);
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
452
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
453 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
454 posy = (int)(DW_PIXMAP_HEIGHT(pixmap) - fheight)/2;
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
455
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
456 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
457 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
458 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
459 }
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
460 }
1137
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
461 return TRUE;
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
462 }
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
463
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
464 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
465 {
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
466 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
467 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
468 return FALSE;
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
469 }
e24e5a13ff2c Added code to test the new print functions in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1110
diff changeset
470
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
471 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
472 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
473 update_render();
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
474 return FALSE;
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
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
477 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
478 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
479 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
480 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
481 if(index == 2)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
482 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
483 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
484 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
485 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
486 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
487 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
488 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
489 else
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 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
492 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
493 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
494 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
495 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
496 render_type = index;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
497 update_render();
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
498 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
499 return FALSE;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
500 }
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 int DWSIGNAL colorchoose_callback(HWND window, void *data)
f6de197ecbe9 Add dw_color_choose()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 531
diff changeset
503 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
504 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
505 return FALSE;
566
f6de197ecbe9 Add dw_color_choose()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 531
diff changeset
506 }
f6de197ecbe9 Add dw_color_choose()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 531
diff changeset
507
391
2059f18e9c20 Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 385
diff changeset
508 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
509 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
510 if(cursor_arrow)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
511 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
512 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
513 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
514 cursor_arrow = 0;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
515 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
516 else
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
517 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
518 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
519 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
520 cursor_arrow = 1;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
521 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
522 return FALSE;
391
2059f18e9c20 Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 385
diff changeset
523 }
2059f18e9c20 Add extra button to test mouse cursor change.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 385
diff changeset
524
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
525 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
526 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
527 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
528 return TRUE;
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
529 }
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
530
1746
76b24619f6fa Experimental OS/2 code adding utf8 input conversion...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1745
diff changeset
531 int DWSIGNAL keypress_callback(HWND window, char ch, int vk, int state, void *data, char *utf8)
254
42332e598d55 Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 253
diff changeset
532 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
533 char tmpbuf[100];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
534 if ( ch )
1746
76b24619f6fa Experimental OS/2 code adding utf8 input conversion...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1745
diff changeset
535 sprintf( tmpbuf, "Key: %c(%d) Modifiers: %s(%d) utf8 %s", ch, ch, resolve_keymodifiers(state), state, utf8 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
536 else
1746
76b24619f6fa Experimental OS/2 code adding utf8 input conversion...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1745
diff changeset
537 sprintf( tmpbuf, "Key: %s(%d) Modifiers: %s(%d) utf8 %s", resolve_keyname(vk), vk, resolve_keymodifiers(state), state, utf8 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
538 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
539 return 0;
620
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
540 }
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
541
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
542 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
543 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
544 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
545
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
546 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
547 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
548 return 0;
620
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
549 }
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
550
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
551 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
552 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
553 if ( menu_enabled )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
554 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
555 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
556 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
557 menu_enabled = 0;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
558 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
559 else
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
560 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
561 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
562 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
563 menu_enabled = 1;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
564 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
565 return 0;
620
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
566 }
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
567
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
568 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
569 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
570 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
571
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
572 dw_environment_query(&env);
1741
1b3b059a74b1 Unsafe use of sprintf() in dwtest may have been causing stack overruns on Win2k.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1738
diff changeset
573 dw_messagebox( "About dwindows", DW_MB_OK | DW_MB_INFORMATION, "dwindows test\n\nOS: %s %s %s Version: %d.%d.%d.%d\n\ndwindows Version: %d.%d.%d",
1b3b059a74b1 Unsafe use of sprintf() in dwtest may have been causing stack overruns on Win2k.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1738
diff changeset
574 env.osName, env.buildDate, env.buildTime,
1b3b059a74b1 Unsafe use of sprintf() in dwtest may have been causing stack overruns on Win2k.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1738
diff changeset
575 env.MajorVersion, env.MinorVersion, env.MajorBuild, env.MinorBuild,
1b3b059a74b1 Unsafe use of sprintf() in dwtest may have been causing stack overruns on Win2k.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1738
diff changeset
576 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
577 return 0;
254
42332e598d55 Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 253
diff changeset
578 }
42332e598d55 Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 253
diff changeset
579
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
580 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
581 {
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
582 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
583 {
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
584 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
585 }
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
586 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
587 }
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
588
905
ae5d884af4ed Added a Browse Folder button to test the folder browsing dialogs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 897
diff changeset
589 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
590 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
591 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
592 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
593 if ( tmp )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
594 {
2066
2c2530f8cbef Initial design for system notification support on GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2054
diff changeset
595 HWND notification = dw_notification_new("New file loaded", NULL, "dwtest loaded \"%s\" into the file browser on the Render tab, with \"File Display\" selected from the drop down list.", tmp);
2c2530f8cbef Initial design for system notification support on GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2054
diff changeset
596
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
597 if ( current_file )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
598 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
599 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
600 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
601 current_file = tmp;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
602 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
603 read_file();
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
604 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
605 update_render();
2066
2c2530f8cbef Initial design for system notification support on GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2054
diff changeset
606 dw_notification_send(notification);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
607 }
1798
9fb8339ae458 Add simple test of dw_window_set_focus()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1795
diff changeset
608 dw_window_set_focus(copypastefield);
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;
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
610 }
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
611
905
ae5d884af4ed Added a Browse Folder button to test the folder browsing dialogs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 897
diff changeset
612 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
613 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
614 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
615 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
616 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
617 }
ae5d884af4ed Added a Browse Folder button to test the folder browsing dialogs.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 897
diff changeset
618
503
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
619 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
620 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
621 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
622 unsigned int idx;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
623 int len;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
624 long spvalue;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
625 char buf1[100];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
626 char buf2[100];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
627 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
628
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
629 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
630 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
631 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
632 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
633 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
634 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
635 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
636 spvalue,
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
637 buf1, buf2,
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
638 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
639 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
640 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
641 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
642 }
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
643
1833
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
644 int DWSIGNAL bitmap_toggle_callback(HWND window, void *data)
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
645 {
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
646 static int isfoldericon = 1;
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
647
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
648 if ( isfoldericon )
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
649 {
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
650 isfoldericon = 0;
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
651 dw_window_set_bitmap( window, 0, FILE_ICON_NAME );
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
652 dw_window_set_tooltip( window, "File Icon" );
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
653 }
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
654 else
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
655 {
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
656 isfoldericon = 1;
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
657 dw_window_set_bitmap_from_data( window, 0, folder_ico, sizeof(folder_ico) );
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
658 dw_window_set_tooltip( window, "Folder Icon" );
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
659 }
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
660 return 0;
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
661 }
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
662
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
663 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
664 {
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
665 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
666 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
667 }
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
668
634
c6a216c8174f Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 629
diff changeset
669 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
670 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
671 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
672 return 0;
634
c6a216c8174f Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 629
diff changeset
673 }
c6a216c8174f Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 629
diff changeset
674
c6a216c8174f Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 629
diff changeset
675 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
676 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
677 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
678 return 0;
634
c6a216c8174f Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 629
diff changeset
679 }
c6a216c8174f Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 629
diff changeset
680
c6a216c8174f Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 629
diff changeset
681
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
682 /* 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
683 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
684 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
685 if(data)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
686 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
687 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
688 char tmpbuf[100];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
689 if ( hwnd == vscrollbar )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
690 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
691 current_row = value;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
692 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
693 else
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
694 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
695 current_col = value;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
696 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
697 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
698 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
699 update_render();
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
700 }
217
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
701 }
7112c817573d Added test code from mark hessling.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 213
diff changeset
702
602
489a684af1bb Add some more test
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 600
diff changeset
703 /* 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
704 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
705 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
706 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
707 }
489a684af1bb Add some more test
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 600
diff changeset
708
627
77cc62375fee Fixed dw_html_raw() under GTK+ and added test case for it
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 621
diff changeset
709 /* 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
710 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
711 {
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
712 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
713 }
77cc62375fee Fixed dw_html_raw() under GTK+ and added test case for it
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 621
diff changeset
714
218
fe0ab0040ba2 Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 217
diff changeset
715 /* 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
716 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
717 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
718 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
719 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
720
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
721 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
722 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
723
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
724 /* 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
725 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
726 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
727
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
728 /* 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
729 dw_color_foreground_set(DW_CLR_WHITE);
1684
31dd366acfc8 Fixed calculating the GDI+ ratio based on the DPI on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1667
diff changeset
730 dw_draw_rect(0, text1pm, DW_DRAW_FILL | DW_DRAW_NOAA, 0, 0, (int)DW_PIXMAP_WIDTH(text1pm), (int)DW_PIXMAP_HEIGHT(text1pm));
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
731
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
732 /* 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
733 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
734 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
735
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
736 /* 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
737 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
738 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
739
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
740 /* Redraw the window */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
741 update_render();
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
742 return TRUE;
218
fe0ab0040ba2 Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 217
diff changeset
743 }
fe0ab0040ba2 Not quite right yet but... handle resize and pixmap resizing.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 217
diff changeset
744
1883
0fecaedb83fa Add optional itemdata field to ITEM_ENTER callback functon.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1880
diff changeset
745 int DWSIGNAL item_enter_cb( HWND window, 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
746 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
747 char buf[200];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
748 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
749
1883
0fecaedb83fa Add optional itemdata field to ITEM_ENTER callback functon.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1880
diff changeset
750 sprintf(buf,"DW_SIGNAL_ITEM_ENTER: Window: %x Text: %s Itemdata: %x", DW_POINTER_TO_UINT(window), 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
751 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
752 return 0;
304
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
753 }
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
754
311
24c1dfffe97e Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 310
diff changeset
755 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
756 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
757 char buf[200];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
758 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
759
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
760 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
761 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
762 return 0;
304
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
763 }
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
764
311
24c1dfffe97e Unified the callback functions for tree and container widgets.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 310
diff changeset
765 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
766 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
767 char buf[200];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
768 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
769
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,"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
771 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
772 return 0;
304
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
773 }
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
774
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
775 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
776 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
777 char buf[200];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
778 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
779
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
780 sprintf(buf,"DW_SIGNAL_ITEM_SELECT: Window: %x Item: %x Text: %s Itemdata: %x", DW_POINTER_TO_UINT(window),
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
781 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
782 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
783 return 0;
304
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
784 }
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
785
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
786 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
787 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
788 char buf[200];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
789 char *str;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
790 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
791 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
792
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
793 sprintf(buf,"DW_SIGNAL_ITEM_SELECT: Window: %x Item: %x Text: %s Itemdata: %x", DW_POINTER_TO_UINT(window),
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
794 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
795 dw_window_set_text( statline, buf);
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
796 sprintf(buf,"\r\nDW_SIGNAL_ITEM_SELECT: Window: %x Item: %x Text: %s Itemdata: %x\r\n", DW_POINTER_TO_UINT(window),
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
797 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
798 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
799 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
800 while(str)
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
801 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
802 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
803 mle_point = dw_mle_import( container_mle, buf, mle_point);
1884
71780cf68aa2 More container and tree changes on all platforms regarding memory.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1883
diff changeset
804 dw_free(str);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
805 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
806 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
807 /* 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
808 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
809 /* set the details of item 0 to new data */
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
810 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
811 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
812 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
813 size = 999;
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
814 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
815 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
816 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
817 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
818 }
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
819
346
81fae15885d7 Implemented switch-page on OS/2, and changed the signal prototype to
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 336
diff changeset
820 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
821 {
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
822 dw_debug("DW_SIGNAL_SWITCH_PAGE: Window: %x PageNum: %u Itemdata: %x\n", DW_POINTER_TO_UINT(window),
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
823 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
824 return 0;
333
b6491cefa512 Add test for switch-page signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 328
diff changeset
825 }
b6491cefa512 Add test for switch-page signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 328
diff changeset
826
474
053211e0698b Add tracing code for column-click signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 459
diff changeset
827 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
828 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
829 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
830 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
831 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
832
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
833 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
834 strcpy(buf1,"Filename");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
835 else
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
836 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
837 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
838 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
839 strcpy(buf1,"String");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
840 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
841 strcpy(buf1,"ULong");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
842 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
843 strcpy(buf1,"Date");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
844 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
845 strcpy(buf1,"Time");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
846 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
847 strcpy(buf1,"BitmapOrIcon");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
848 else
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
849 strcpy(buf1,"Unknown");
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
850 }
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
851 sprintf(buf,"DW_SIGNAL_COLUMN_CLICK: Window: %x Column: %d Type: %s Itemdata: %x", DW_POINTER_TO_UINT(window),
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
852 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
853 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
854 return 0;
474
053211e0698b Add tracing code for column-click signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 459
diff changeset
855 }
053211e0698b Add tracing code for column-click signal.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 459
diff changeset
856
602
489a684af1bb Add some more test
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 600
diff changeset
857 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
858 {
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
859 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
860 return FALSE;
602
489a684af1bb Add some more test
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 600
diff changeset
861 }
489a684af1bb Add some more test
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 600
diff changeset
862
1753
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
863 int DWSIGNAL copy_clicked_callback(HWND button, void *data)
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
864 {
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
865 char *test = dw_window_get_text(copypastefield);
1798
9fb8339ae458 Add simple test of dw_window_set_focus()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1795
diff changeset
866
1753
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
867 if(test)
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
868 {
1765
15414cbe857f Fix warnings with Visual C largely in debug mode.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1753
diff changeset
869 dw_clipboard_set_text(test, (int)strlen(test));
1753
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
870 dw_free(test);
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
871 }
1798
9fb8339ae458 Add simple test of dw_window_set_focus()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1795
diff changeset
872 dw_window_set_focus(entryfield);
1753
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
873 return TRUE;
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
874 }
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
875
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
876 int DWSIGNAL paste_clicked_callback(HWND button, void *data)
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
877 {
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
878 char *test = dw_clipboard_get_text();
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
879 if(test)
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
880 {
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
881 dw_window_set_text(copypastefield, test);
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
882 dw_free(test);
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
883 }
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
884 return TRUE;
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
885 }
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
886
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
887 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
888 {
1753
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
889 HWND browsefilebutton, browsefolderbutton, copybutton, pastebutton, 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
890
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
891 lbbox = dw_box_new(DW_VERT, 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
892
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
893 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
894
1753
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
895 /* Copy and Paste */
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
896 browsebox = dw_box_new(DW_HORZ, 0);
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
897
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
898 dw_box_pack_start(lbbox, browsebox, 0, 0, FALSE, FALSE, 0);
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
899
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
900 copypastefield = dw_entryfield_new("", 0);
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
901
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
902 dw_entryfield_set_limit(copypastefield, 260);
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
903
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
904 dw_box_pack_start(browsebox, copypastefield, -1, -1, TRUE, FALSE, 4);
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
905
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
906 copybutton = dw_button_new("Copy", 0);
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
907
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
908 dw_box_pack_start(browsebox, copybutton, -1, -1, FALSE, FALSE, 0);
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
909
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
910 pastebutton = dw_button_new("Paste", 0);
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
911
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
912 dw_box_pack_start(browsebox, pastebutton, -1, -1, FALSE, FALSE, 0);
1798
9fb8339ae458 Add simple test of dw_window_set_focus()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1795
diff changeset
913
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
914 /* Archive Name */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
915 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
916
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
917 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
918
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
919 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
920
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
921 browsebox = 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
922
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
923 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
924
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
925 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
926
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
927 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
928
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
929 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
930
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
931 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
932
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
933 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
934
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
935 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
936
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
937 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
938
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
939 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
940 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
941
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
942 /* Buttons */
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
943 buttonbox = dw_box_new(DW_HORZ, 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
944
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
945 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
946
1667
9dbd2984c1e5 Initial implementation of dw_box_remove() and dw_box_remove_at_index()
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1615
diff changeset
947 cancelbutton = dw_button_new("Exit", 1002L);
9dbd2984c1e5 Initial implementation of dw_box_remove() and dw_box_remove_at_index()
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1615
diff changeset
948 dw_box_pack_start(buttonbox, cancelbutton, 130, 30, TRUE, TRUE, 2);
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
949
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
950 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
951 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
952
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
953 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
954 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
955
1769
d81bebc5c8cc Mark and I decided to change dw_box_remove*() to dw_box_unpack*() for consistency.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1765
diff changeset
956 dw_box_unpack(cancelbutton);
954
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(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
958 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
959
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
960 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
961 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
962
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
963 /* 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
964 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
965 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
966 dw_window_set_color(okbutton, DW_CLR_PALEGRAY, DW_CLR_DARKCYAN);
1849
b5e1ccc76e58 Added code to set the foreground color on Mac buttons...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1844
diff changeset
967 #ifdef COLOR_DEBUG
b5e1ccc76e58 Added code to set the foreground color on Mac buttons...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1844
diff changeset
968 dw_window_set_color(copypastefield, DW_CLR_WHITE, DW_CLR_RED);
b5e1ccc76e58 Added code to set the foreground color on Mac buttons...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1844
diff changeset
969 dw_window_set_color(copybutton, DW_CLR_WHITE, DW_CLR_RED);
b5e1ccc76e58 Added code to set the foreground color on Mac buttons...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1844
diff changeset
970 /* Set a color then clear it to make sure it clears correctly */
b5e1ccc76e58 Added code to set the foreground color on Mac buttons...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1844
diff changeset
971 dw_window_set_color(entryfield, DW_CLR_WHITE, DW_CLR_RED);
b5e1ccc76e58 Added code to set the foreground color on Mac buttons...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1844
diff changeset
972 dw_window_set_color(entryfield, DW_CLR_DEFAULT, DW_CLR_DEFAULT);
b5e1ccc76e58 Added code to set the foreground color on Mac buttons...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1844
diff changeset
973 /* Set a color then clear it to make sure it clears correctly... again */
b5e1ccc76e58 Added code to set the foreground color on Mac buttons...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1844
diff changeset
974 dw_window_set_color(pastebutton, DW_CLR_WHITE, DW_CLR_RED);
b5e1ccc76e58 Added code to set the foreground color on Mac buttons...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1844
diff changeset
975 dw_window_set_color(pastebutton, DW_CLR_DEFAULT, DW_CLR_DEFAULT);
b5e1ccc76e58 Added code to set the foreground color on Mac buttons...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1844
diff changeset
976 #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
977
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
978 dw_signal_connect(browsefilebutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(browse_file_callback), DW_POINTER(notebookbox1));
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
979 dw_signal_connect(browsefolderbutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(browse_folder_callback), DW_POINTER(notebookbox1));
1753
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
980 dw_signal_connect(copybutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(copy_clicked_callback), DW_POINTER(copypastefield));
87c215963fdc Added some fields to the test program to test copy and paste functionality.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1746
diff changeset
981 dw_signal_connect(pastebutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(paste_clicked_callback), DW_POINTER(copypastefield));
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
982 dw_signal_connect(okbutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(beep_callback), DW_POINTER(notebookbox1));
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
983 dw_signal_connect(cancelbutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(exit_callback), DW_POINTER(mainwindow));
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
984 dw_signal_connect(cursortogglebutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(cursortoggle_callback), DW_POINTER(mainwindow));
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
985 dw_signal_connect(colorchoosebutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(colorchoose_callback), DW_POINTER(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
986 }
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
987
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
988 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
989 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
990 char buf[200];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
991 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
992 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
993 return 0;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
994 }
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
995
1560
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
996 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
997 {
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
998 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
999 if(thiswindow)
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1000 {
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1001 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
1002 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
1003 }
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1004 return TRUE;
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1005 }
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1006
1220
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
1007 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
1008 {
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
1009 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
1010 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
1011 long px, py;
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
1012
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1013 dw_signal_connect(menuitem, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(exit_callback), DW_POINTER(mainwindow));
1560
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1014 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
1015 menuitem = dw_menu_append_item(hwndMenu, "~Show Window", DW_MENU_POPUP, 0L, TRUE, FALSE, DW_NOMENU);
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1016 dw_signal_connect(menuitem, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(show_window_callback), DW_POINTER(mainwindow));
1220
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
1017 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
1018 /* 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
1019 * 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
1020 * 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
1021 * 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
1022 */
b54d37938d61 Fix for the status popup menu not functioning when a different
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1224
diff changeset
1023 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
1024 return TRUE;
1220
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
1025 }
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
1026
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
1027 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
1028 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1029 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
1030 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
1031 int vscrollbarwidth, hscrollbarheight;
1785
c5ea64e8b436 Added UTF8/Wide conversion for GTK2/3.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1783
diff changeset
1032 wchar_t widestring[100] = L"DWTest Wide";
c5ea64e8b436 Added UTF8/Wide conversion for GTK2/3.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1783
diff changeset
1033 char *utf8string = dw_wchar_to_utf8(widestring);
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
1034
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1035 /* create a box to pack into the notebook page */
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1036 pagebox = dw_box_new(DW_HORZ, 2);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1037 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
1038 /* now a status area under this box */
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1039 hbox = dw_box_new(DW_HORZ, 1 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1040 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
1041 status1 = dw_status_text_new("", 0);
1791
ed8851658015 Set status text fields in the test program to auto height... because they were too small on Mac.... this caused me to notice a bug in the calculation of (status) text widgets when the text is empty; this also contains a fix for that bug.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1785
diff changeset
1042 dw_box_pack_start( hbox, status1, 100, -1, TRUE, FALSE, 1);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1043 status2 = dw_status_text_new("", 0);
1791
ed8851658015 Set status text fields in the test program to auto height... because they were too small on Mac.... this caused me to notice a bug in the calculation of (status) text widgets when the text is empty; this also contains a fix for that bug.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1785
diff changeset
1044 dw_box_pack_start( hbox, status2, 100, -1, TRUE, FALSE, 1);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1045 /* a box with combobox and button */
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1046 hbox = dw_box_new(DW_HORZ, 1 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1047 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
1048 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
1049 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
1050 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
1051 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
1052 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
1053 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
1054 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
1055 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
1056 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
1057 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
1058 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
1059 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
1060 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
1061 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
1062 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
1063 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
1064 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
1065 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
1066 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
1067 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
1068 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
1069
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1070 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
1071 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
1072 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
1073 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
1074
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
1075 /* 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
1076 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
1077 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
1078 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
1079 dw_window_get_preferred_size(hscrollbar, NULL, &hscrollbarheight);
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
1080
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
1081 /* On GTK with overlay scrollbars enabled this returns us 0...
1525
34ce887be578 Handle special case of overlay scrollbars returning size 0.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1484
diff changeset
1082 * 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
1083 */
34ce887be578 Handle special case of overlay scrollbars returning size 0.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1484
diff changeset
1084 if(!vscrollbarwidth)
34ce887be578 Handle special case of overlay scrollbars returning size 0.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1484
diff changeset
1085 vscrollbarwidth = 8;
34ce887be578 Handle special case of overlay scrollbars returning size 0.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1484
diff changeset
1086 if(!hscrollbarheight)
34ce887be578 Handle special case of overlay scrollbars returning size 0.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1484
diff changeset
1087 hscrollbarheight = 8;
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
1088
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1089 /* 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
1090 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
1091 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
1092 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
1093 font_width = font_width / 2;
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1094 vscrollbox = dw_box_new(DW_VERT, 0);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1095 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
1096 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
1097 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
1098
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1099 /* 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
1100 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
1101
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1102 /* create box for filecontents and horz scrollbar */
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1103 textboxA = dw_box_new( DW_VERT,0 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1104 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
1105
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1106 /* 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
1107 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
1108 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
1109 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
1110 /* 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
1111 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
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 vertical scrollbar */
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1114 vscrollbox = dw_box_new(DW_VERT, 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
1115 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
1116 /* 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
1117 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
1118 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
1119
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1120 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
1121 text2pm = dw_pixmap_new( textbox2, font_width*cols, font_height*rows, (int)depth );
958
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 957
diff changeset
1122 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
1123 if(!image)
958
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 957
diff changeset
1124 image = dw_pixmap_new_from_file(textbox2, "~/test");
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 957
diff changeset
1125 if(image)
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 957
diff changeset
1126 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
1127
1785
c5ea64e8b436 Added UTF8/Wide conversion for GTK2/3.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1783
diff changeset
1128 dw_messagebox(utf8string ? utf8string : "DWTest", DW_MB_OK|DW_MB_INFORMATION, "Width: %d Height: %d\n", font_width, font_height);
1684
31dd366acfc8 Fixed calculating the GDI+ ratio based on the DPI on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1667
diff changeset
1129 dw_draw_rect(0, text1pm, DW_DRAW_FILL | DW_DRAW_NOAA, 0, 0, font_width*width1, font_height*rows);
31dd366acfc8 Fixed calculating the GDI+ ratio based on the DPI on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1667
diff changeset
1130 dw_draw_rect(0, text2pm, DW_DRAW_FILL | DW_DRAW_NOAA, 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
1131 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
1132 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
1133 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
1134 dw_signal_connect(textbox2, DW_SIGNAL_CONFIGURE, DW_SIGNAL_FUNC(configure_event), text2pm);
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1135 dw_signal_connect(textbox2, DW_SIGNAL_MOTION_NOTIFY, DW_SIGNAL_FUNC(motion_notify_event), DW_INT_TO_POINTER(1));
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1136 dw_signal_connect(textbox2, DW_SIGNAL_BUTTON_PRESS, DW_SIGNAL_FUNC(motion_notify_event), DW_INT_TO_POINTER(0));
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1137 dw_signal_connect(hscrollbar, DW_SIGNAL_VALUE_CHANGED, DW_SIGNAL_FUNC(scrollbar_valuechanged_callback), DW_POINTER(status1));
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1138 dw_signal_connect(vscrollbar, DW_SIGNAL_VALUE_CHANGED, DW_SIGNAL_FUNC(scrollbar_valuechanged_callback), DW_POINTER(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
1139 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
1140 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
1141 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
1142 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
1143 dw_signal_connect(mainwindow, DW_SIGNAL_KEY_PRESS, DW_SIGNAL_FUNC(keypress_callback), NULL);
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
1144
1220
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
1145 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
1146 }
42332e598d55 Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 253
diff changeset
1147
42332e598d55 Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 253
diff changeset
1148 void tree_add(void)
42332e598d55 Add third notebook page - for tree example. Just starting.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 253
diff changeset
1149 {
1186
ce83df520be0 Remove the MDI notebook tab from DEPRECATED.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1152
diff changeset
1150 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
1151 HWND listbox;
1870
5a4d98cab9d3 Fixed dw_tree_get_title() on Windows and implemented tests for
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1849
diff changeset
1152 char *title;
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 /* 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
1155 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
1156 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
1157 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
1158 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
1159 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
1160 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
1161 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
1162
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1163 /* 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
1164 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
1165 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
1166
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1167 /* 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
1168 tree_status = dw_status_text_new("", 0);
1791
ed8851658015 Set status text fields in the test program to auto height... because they were too small on Mac.... this caused me to notice a bug in the calculation of (status) text widgets when the text is empty; this also contains a fix for that bug.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1785
diff changeset
1169 dw_box_pack_start( notebookbox3, tree_status, 100, -1, 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
1170
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1171 /* set up our signal trappers... */
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1172 dw_signal_connect(tree, DW_SIGNAL_ITEM_CONTEXT, DW_SIGNAL_FUNC(item_context_cb), DW_POINTER(tree_status));
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1173 dw_signal_connect(tree, DW_SIGNAL_ITEM_SELECT, DW_SIGNAL_FUNC(item_select_cb), DW_POINTER(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
1174
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1175 t1 = dw_tree_insert(tree, "tree folder 1", foldericon, NULL, DW_INT_TO_POINTER(1) );
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1176 t2 = dw_tree_insert(tree, "tree folder 2", foldericon, NULL, DW_INT_TO_POINTER(2) );
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1177 dw_tree_insert(tree, "tree file 1", fileicon, t1, DW_INT_TO_POINTER(3) );
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1178 dw_tree_insert(tree, "tree file 2", fileicon, t1, DW_INT_TO_POINTER(4) );
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1179 dw_tree_insert(tree, "tree file 3", fileicon, t2, DW_INT_TO_POINTER(5) );
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1180 dw_tree_insert(tree, "tree file 4", fileicon, t2, DW_INT_TO_POINTER(6) );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1181 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
1182 dw_tree_item_change(tree, t2, "tree folder 2", foldericon );
1870
5a4d98cab9d3 Fixed dw_tree_get_title() on Windows and implemented tests for
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1849
diff changeset
1183 dw_tree_item_set_data(tree, t2, DW_INT_TO_POINTER(100));
5a4d98cab9d3 Fixed dw_tree_get_title() on Windows and implemented tests for
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1849
diff changeset
1184 title = dw_tree_get_title(tree, t1);
5a4d98cab9d3 Fixed dw_tree_get_title() on Windows and implemented tests for
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1849
diff changeset
1185 dw_debug("t1 title \"%s\" data %d t2 data %d\n", title, DW_POINTER_TO_INT(dw_tree_item_get_data(tree, t1)), DW_POINTER_TO_INT(dw_tree_item_get_data(tree, t2)));
5a4d98cab9d3 Fixed dw_tree_get_title() on Windows and implemented tests for
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1849
diff changeset
1186 dw_free(title);
304
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
1187 }
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
1188
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
1189 void container_add(void)
c28c0a804442 Added extra notebook page for a container example.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 300
diff changeset
1190 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1191 char *titles[4];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1192 char buffer[100];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1193 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
1194 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
1195 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
1196 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
1197 int z;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1198 CTIME time;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1199 CDATE date;
1319
03f0bc85e7be Code change to fix llvm-gcc optimization problem on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1306
diff changeset
1200 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
1201 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
1202
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1203 /* create a box to pack into the notebook page */
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1204 containerbox = dw_box_new(DW_HORZ, 2);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1205 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
1206
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1207 /* 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
1208 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
1209 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
1210
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1211 /* 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
1212 container_status = dw_status_text_new("", 0);
1791
ed8851658015 Set status text fields in the test program to auto height... because they were too small on Mac.... this caused me to notice a bug in the calculation of (status) text widgets when the text is empty; this also contains a fix for that bug.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1785
diff changeset
1213 dw_box_pack_start( notebookbox4, container_status, 100, -1, 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
1214
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1215 titles[0] = "Type";
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1216 titles[1] = "Size";
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1217 titles[2] = "Time";
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1218 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
1219
1745
7dd1659c2693 Fixes for the new localization function on OS/2 and GTK3.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1744
diff changeset
1220 dw_filesystem_set_column_title(container, "Test");
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1221 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
1222 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
1223 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
1224
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1225 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
1226 {
1873
15d24b5300ec Third GTK3 round of changes to split string and data
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1872
diff changeset
1227 char names[100];
2002
a2931caa3422 Fix setting/getting dates in dw_calendar under macos. Only tested on Mojave. Sorry about the white space changes.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1920
diff changeset
1228
1873
15d24b5300ec Third GTK3 round of changes to split string and data
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1872
diff changeset
1229 sprintf(names, "We can now allocate from the stack: Item: %d", z);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1230 size = z*100;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1231 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
1232 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
1233 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
1234 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
1235 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
1236 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
1237 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
1238 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
1239
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1240 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
1241 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
1242 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
1243 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
1244
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1245 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
1246 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
1247 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
1248 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
1249
1873
15d24b5300ec Third GTK3 round of changes to split string and data
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1872
diff changeset
1250 dw_container_set_row_title(containerinfo, z, names);
1872
eae36372d64d Second Windows round of changes to split the data and string
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1870
diff changeset
1251 dw_container_set_row_data(containerinfo, z, DW_INT_TO_POINTER(z));
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1252 }
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
1253
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1254 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
1255
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1256 containerinfo = dw_container_alloc(container, 1);
1880
6949c73e30fd Fixes for building on OS/2 and removed some strdup()s in
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1875
diff changeset
1257 dw_filesystem_set_file(container, containerinfo, 0, "Yikes", foldericon);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1258 size = 324;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1259 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
1260 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
1261 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
1262 dw_filesystem_set_item(container, containerinfo, 3, 0, &date);
1880
6949c73e30fd Fixes for building on OS/2 and removed some strdup()s in
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1875
diff changeset
1263 dw_container_set_row_title(containerinfo, 0, "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
1264
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1265 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
1266 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
1267
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1268 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
1269 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
1270
b3674ea2909f Put http://dwindows.netlabs.org back in as test site for HTML widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1038
diff changeset
1271 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
1272 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
1273 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
1274 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
1275 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
1276 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
1277 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
1278 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
1279 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
1280 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
1281 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
1282 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
1283 /* connect our event trappers... */
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1284 dw_signal_connect(container, DW_SIGNAL_ITEM_ENTER, DW_SIGNAL_FUNC(item_enter_cb), DW_POINTER(container_status));
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1285 dw_signal_connect(container, DW_SIGNAL_ITEM_CONTEXT, DW_SIGNAL_FUNC(item_context_cb), DW_POINTER(container_status));
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1286 dw_signal_connect(container, DW_SIGNAL_ITEM_SELECT, DW_SIGNAL_FUNC(container_select_cb), DW_POINTER(container_status));
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1287 dw_signal_connect(container, DW_SIGNAL_COLUMN_CLICK, DW_SIGNAL_FUNC(column_click_cb), DW_POINTER(container_status));
195
b023d363fc09 Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 193
diff changeset
1288 }
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
1289
195
b023d363fc09 Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 193
diff changeset
1290 /* Beep every second */
b023d363fc09 Added scrollbar and timer support on OS/2 and GTK.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 193
diff changeset
1291 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
1292 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1293 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
1294
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1295 /* 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
1296 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
1297 }
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
1298
503
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
1299
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
1300 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
1301 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1302 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
1303 int i;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1304 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
1305
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1306 /* create a box to pack into the notebook page */
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1307 buttonsbox = dw_box_new(DW_VERT, 2);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1308 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
1309 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
1310
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1311 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
1312 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
1313 cal = dw_calendar_new(100);
1735
1a7b9b96d9d7 Minor layout changes to the test program so all buttons are
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1685
diff changeset
1314 dw_box_pack_start(calbox, cal, 180, 120, TRUE, TRUE, 0);
2002
a2931caa3422 Fix setting/getting dates in dw_calendar under macos. Only tested on Mojave. Sorry about the white space changes.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1920
diff changeset
1315
a2931caa3422 Fix setting/getting dates in dw_calendar under macos. Only tested on Mojave. Sorry about the white space changes.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1920
diff changeset
1316 dw_calendar_set_date(cal, 2019, 4, 30);
a2931caa3422 Fix setting/getting dates in dw_calendar under macos. Only tested on Mojave. Sorry about the white space changes.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1920
diff changeset
1317
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1318 /*
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1319 * 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
1320 */
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1321 buttonboxperm = dw_box_new( DW_VERT, 0 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1322 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
1323 dw_window_set_color(buttonboxperm, DW_CLR_WHITE, DW_CLR_WHITE);
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
1324 abutton1 = dw_bitmapbutton_new_from_file( "Top Button", 0, FILE_ICON_NAME );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1325 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
1326 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
1327 dw_box_pack_start( buttonboxperm, 0, 25, 5, FALSE, FALSE, 0 );
1833
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
1328 abutton2 = dw_bitmapbutton_new_from_data( "Folder Icon", 0, folder_ico, sizeof( folder_ico) );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1329 dw_box_pack_start( buttonsbox, abutton2, 25, 25, FALSE, FALSE, 0 );
1833
b35e041fc114 Fixed dw_bitmapbutton_new_from_data(); was missing the save of the bitmap image reference.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1821
diff changeset
1330 dw_signal_connect( abutton2, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(bitmap_toggle_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
1331
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1332 create_button(0);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1333 /* make a combobox */
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1334 combox = dw_box_new(DW_VERT, 2);
1456
6bf5dc7da45d Added automatic widget size detection a variety of places in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1379
diff changeset
1335 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
1336 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
1337 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
1338 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
1339 /*
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1340 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
1341 */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1342 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
1343 #if 0
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1344 /* 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
1345 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
1346 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
1347 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1348 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
1349 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
1350 }
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
1351 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
1352 #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
1353
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1354 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
1355 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
1356 /*
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_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
1358 */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1359 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
1360 /* 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
1361 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
1362 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
1363 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
1364 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1365 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
1366 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
1367 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1368 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
1369 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
1370 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
1371 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1372 free(text[i]);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1373 }
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1374 free(text);
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1375 /* 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
1376 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
1377 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
1378 /* make a spinbutton */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1379 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
1380 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
1381 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
1382 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
1383 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
1384 /* 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
1385 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
1386 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
1387 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
1388 /* 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
1389 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
1390 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
1391 }
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
1392
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
1393 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
1394 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1395 HWND abutton1;
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1396 filetoolbarbox = dw_box_new( DW_VERT, 0 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1397 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
1398
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
1399 abutton1 = dw_bitmapbutton_new_from_file( "Empty image. Should be under Top button", 0, "junk" );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1400 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
1401 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
1402 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
1403
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
1404 abutton1 = dw_bitmapbutton_new_from_data( "A borderless bitmapbitton", 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
1405 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
1406 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
1407 dw_box_pack_start( filetoolbarbox, 0, 25, 5, FALSE, FALSE, 0 );
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
1408 dw_window_set_style( abutton1, DW_BS_NOBORDER, DW_BS_NOBORDER );
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
1409
1090
b905fd8e7fd1 Use _tempnam() on Windows instead of tmpnam() for dw_*_from_data() functions.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1077
diff changeset
1410 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
1411 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
1412 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
1413 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
1414 if ( redraw )
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1415 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1416 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
1417 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
1418 }
503
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
1419 }
f3ed8dda02f8 Added dw_filesystem_change_*() and testcase code from Mark in dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 487
diff changeset
1420
1920
31179c5a3c5a Change DEPRECATED to DW_INCLUDE_DEPRECATED in dwtest.c so
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1884
diff changeset
1421 #ifdef DW_INCLUDE_DEPRECATED
515
c3c5d8e36aa3 Implemented MDI Window in Window code on GTK 2.x.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 514
diff changeset
1422 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
1423 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1424 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
1425
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1426 /* 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
1427 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
1428
954
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(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
1430
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1431 /* 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
1432 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
1433 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
1434
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1435 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
1436 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
1437 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
1438 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
1439 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
1440 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
1441 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
1442
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1443 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
1444 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
1445 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
1446 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
1447 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
1448 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
1449 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
1450 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
1451 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
1452 }
1783
9de6d1cc8fb8 Put test program code into DEPRECATED #ifdef again to avoid build warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1769
diff changeset
1453 #endif
620
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
1454
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
1455 void menu_add(void)
9876b75d7115 Added menu tests, including checked and disabled menu items.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 606
diff changeset
1456 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1457 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
1458
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1459 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
1460 /* 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
1461 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
1462 menuitem = dw_menu_append_item( menu, "~Quit", 1019, 0, TRUE, FALSE, 0 );
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1463 dw_signal_connect( menuitem, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(exit_callback), DW_POINTER(mainwindow));
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1464 /*
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1465 * 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
1466 */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1467 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
1468
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1469 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
1470 checkable_menuitem = dw_menu_append_item( changeable_menu, "~Checkable Menu Item", CHECKABLE_MENUITEMID, 0, TRUE, TRUE, 0 );
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1471 dw_signal_connect( checkable_menuitem, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(menu_callback), DW_POINTER("checkable"));
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1472 noncheckable_menuitem = dw_menu_append_item( changeable_menu, "~Non-checkable Menu Item", NONCHECKABLE_MENUITEMID, 0, TRUE, FALSE, 0 );
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1473 dw_signal_connect( noncheckable_menuitem, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(menu_callback), DW_POINTER("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
1474 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
1475 /* seperator */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1476 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
1477 menuitem = dw_menu_append_item( changeable_menu, "~Menu Items Disabled", 2009, 0, TRUE, TRUE, 0 );
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1478 dw_signal_connect( menuitem, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(menutoggle_callback), NULL);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1479 /*
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1480 * 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
1481 */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1482 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
1483
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1484 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
1485 menuitem = dw_menu_append_item( menu, "~About", 1091, 0, TRUE, FALSE, 0 );
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1486 dw_signal_connect( menuitem, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(helpabout_callback), DW_POINTER(mainwindow));
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1487 /*
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1488 * 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
1489 */
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1490 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
1491 }
c3c5d8e36aa3 Implemented MDI Window in Window code on GTK 2.x.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 514
diff changeset
1492
774
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
1493 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
1494 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1495 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
1496
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1497 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
1498 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
1499 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
1500 return 0;
774
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
1501 }
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
1502
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
1503 void scrollbox_add(void)
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
1504 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1505 HWND tmpbox,abutton1;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1506 char buf[100];
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1507 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
1508
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1509 /* 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
1510 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
1511 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
1512
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1513 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
1514 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
1515 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
1516
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1517 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
1518 {
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1519 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
1520 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
1521 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
1522 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
1523 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
1524 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
1525 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
1526 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
1527 }
774
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
1528 }
bf3e9892146f Add new notebook page to test scrollbox widget
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 746
diff changeset
1529
1200
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1530 /* Section for thread/event test */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1531 HWND threadmle, startbutton;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1532 HMTX mutex;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1533 HEV workevent, controlevent;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1534 int finished = FALSE;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1535 int ready = 0;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1536 #define BUF_SIZE 1024
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1537 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
1538 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
1539
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1540 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
1541 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1542 static unsigned int pos = 0;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1543
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1544 /* 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
1545 if(lock)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1546 dw_mutex_lock(mutex);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1547 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
1548 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
1549 if(lock)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1550 dw_mutex_unlock(mutex);
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
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1553 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
1554 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1555 dw_window_disable(startbutton);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1556 dw_mutex_lock(mutex);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1557 controlevent = dw_event_new();
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1558 dw_event_reset(workevent);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1559 finished = FALSE;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1560 ready = 0;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1561 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
1562 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
1563 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
1564 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
1565 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
1566 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
1567 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
1568 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
1569 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
1570 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
1571 dw_mutex_unlock(mutex);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1572 return 0;
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
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1575 void thread_add(void)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1576 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1577 HWND tmpbox;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1578
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1579 /* 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
1580 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
1581 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
1582
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1583 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
1584 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
1585 dw_signal_connect( startbutton, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(start_threads_button_callback), NULL );
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
1586
1200
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1587 /* Create the base threading components */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1588 threadmle = dw_mle_new(0);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1589 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
1590 mutex = dw_mutex_new();
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1591 workevent = dw_event_new();
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1592 }
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 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
1595 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1596 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
1597 char buf[BUF_SIZE];
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1598
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1599 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
1600 update_mle(buf, TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1601
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1602 /* 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
1603 dw_mutex_lock(mutex);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1604 ready++;
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
1605 /* If all 4 threads have incrememted the ready count...
1200
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1606 * 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
1607 */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1608 if(ready == 4)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1609 dw_event_post(controlevent);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1610 dw_mutex_unlock(mutex);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1611
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1612 while(!finished)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1613 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1614 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
1615
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1616 if(result == DW_ERROR_TIMEOUT)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1617 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1618 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
1619 update_mle(buf, TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1620 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1621 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
1622 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1623 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
1624 update_mle(buf, TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1625 /* Pretend to do some work */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1626 dw_main_sleep(1000 * threadnum);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1627
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1628 /* 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
1629 dw_mutex_lock(mutex);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1630 ready++;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1631 sprintf(buf, "Thread %d work done. ready=%d", threadnum, ready);
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
1632 /* If all 4 threads have incrememted the ready count...
1200
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1633 * 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
1634 */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1635 if(ready == 4)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1636 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1637 dw_event_post(controlevent);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1638 strcat(buf, " Control posted.");
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1639 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1640 dw_mutex_unlock(mutex);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1641 strcat(buf, "\r\n");
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1642 update_mle(buf, TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1643 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1644 else
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1645 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1646 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
1647 update_mle(buf, TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1648 dw_main_sleep(10000);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1649 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1650 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1651 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
1652 update_mle(buf, TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1653 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1654
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1655 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
1656 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1657 int inprogress = 5;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1658 char buf[BUF_SIZE];
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1659
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1660 while(inprogress)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1661 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1662 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
1663
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1664 if(result == DW_ERROR_TIMEOUT)
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1665 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1666 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
1667 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1668 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
1669 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1670 /* Reset the control event */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1671 dw_event_reset(controlevent);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1672 ready = 0;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1673 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
1674 update_mle(buf, TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1675 /* Start the work threads */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1676 dw_event_post(workevent);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1677 dw_main_sleep(100);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1678 /* Reset the work event */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1679 dw_event_reset(workevent);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1680 inprogress--;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1681 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1682 else
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1683 {
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1684 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
1685 update_mle(buf, TRUE);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1686 dw_main_sleep(10000);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1687 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1688 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1689 /* 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
1690 finished = TRUE;
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1691 dw_event_post(workevent);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1692 /* Close the control event */
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1693 dw_event_close(&controlevent);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1694 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
1695 dw_window_enable(startbutton);
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1696 }
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1697
2009
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1698 /* Handle web back navigation */
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1699 int DWSIGNAL web_back_clicked(HWND button, void *data)
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1700 {
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1701 HWND html = (HWND)data;
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1702
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1703 dw_html_action(html, DW_HTML_GOBACK);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1704 return FALSE;
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1705 }
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1706
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1707 /* Handle web forward navigation */
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1708 int DWSIGNAL web_forward_clicked(HWND button, void *data)
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1709 {
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1710 HWND html = (HWND)data;
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1711
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1712 dw_html_action(html, DW_HTML_GOFORWARD);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1713 return FALSE;
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1714 }
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1715
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1716 /* Handle web reload */
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1717 int DWSIGNAL web_reload_clicked(HWND button, void *data)
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1718 {
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1719 HWND html = (HWND)data;
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1720
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1721 dw_html_action(html, DW_HTML_RELOAD);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1722 return FALSE;
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1723 }
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1724
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1725 /* Handle web run */
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1726 int DWSIGNAL web_run_clicked(HWND button, void *data)
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1727 {
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1728 HWND html = (HWND)data;
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1729 HWND javascript = (HWND)dw_window_get_data(button, "javascript");
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1730 char *script = dw_window_get_text(javascript);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1731
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1732 dw_html_javascript_run(html, script, NULL);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1733 dw_free(script);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1734 return FALSE;
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1735 }
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1736
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1737 /* Handle web javascript result */
2054
466cf00f409f Fixed swapped parameters in web_html_result in the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2031
diff changeset
1738 int DWSIGNAL web_html_result(HWND html, int status, char *result, void *script_data, void *user_data)
2009
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1739 {
2010
617a78dc70aa Added a number of possible javascript snippets to test.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2009
diff changeset
1740 dw_messagebox("Javascript Result", DW_MB_OK | (status ? DW_MB_ERROR : DW_MB_INFORMATION),
617a78dc70aa Added a number of possible javascript snippets to test.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2009
diff changeset
1741 result ? result : "Javascript result is not a string value");
2009
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1742 return TRUE;
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1743 }
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1744
2008
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1745 /* Handle web html changed */
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1746 int DWSIGNAL web_html_changed(HWND html, int status, char *url, void *data)
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1747 {
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1748 HWND hwndstatus = (HWND)data;
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1749 char *statusnames[] = { "none", "started", "redirect", "loading", "complete", NULL };
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1750
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1751 if(hwndstatus && url && status < 5)
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1752 {
2031
c4fc33d70a8e Mac: Removed delayed setNeedsDisplay:YES to fix the incorrect dwtest file
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2026
diff changeset
1753 int length = (int)strlen(url) + (int)strlen(statusnames[status]) + 10;
2008
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1754 char *text = calloc(1, length+1);
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1755
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1756 snprintf(text, length, "Status %s: %s", statusnames[status], url);
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1757 dw_window_set_text(hwndstatus, text);
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1758 free(text);
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1759 }
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1760 return FALSE;
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1761 }
1200
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1762
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
1763 /*
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
1764 * 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
1765 */
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
1766 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
1767 {
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1768 ULONG notebookpage1;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1769 ULONG notebookpage2;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1770 ULONG notebookpage3;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1771 ULONG notebookpage4;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1772 ULONG notebookpage5;
1920
31179c5a3c5a Change DEPRECATED to DW_INCLUDE_DEPRECATED in dwtest.c so
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1884
diff changeset
1773 #ifdef DW_INCLUDE_DEPRECATED
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1774 ULONG notebookpage6;
1783
9de6d1cc8fb8 Put test program code into DEPRECATED #ifdef again to avoid build warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1769
diff changeset
1775 #endif
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1776 ULONG notebookpage7;
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1777 ULONG notebookpage8;
1200
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1778 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
1779
1560
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1780 /* 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
1781 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
1782
1560
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1783 /* Create our window */
1615
38da4aa23b7c Fix for Visual C giving errors on UTF-8 literals in source files.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1613
diff changeset
1784 mainwindow = dw_window_new( HWND_DESKTOP, "dwindows test UTF8 中国語 (繁体) cañón", flStyle | DW_FCF_SIZEBORDER | DW_FCF_MINMAX);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1785 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
1786
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
1787 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
1788
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1789 notebookbox = dw_box_new( DW_VERT, 5 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1790 dw_box_pack_start( mainwindow, notebookbox, 0, 0, TRUE, TRUE, 0);
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
1791
1220
67ff39b9577c Initial implementation of dw_taskbar_* for the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1213
diff changeset
1792 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
1793 fileicon = dw_icon_load_from_file( FILE_ICON_NAME );
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
1794
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1795 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
1796 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
1797 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
1798
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1799 notebookbox1 = dw_box_new( DW_VERT, 5 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1800 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
1801 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
1802 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
1803 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
1804
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1805 notebookbox2 = dw_box_new( DW_VERT, 5 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1806 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
1807 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
1808 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
1809 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
1810
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1811 notebookbox3 = dw_box_new( DW_VERT, 5 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1812 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
1813 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
1814 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
1815 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
1816
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1817 notebookbox4 = dw_box_new( DW_VERT, 5 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1818 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
1819 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
1820 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
1821 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
1822
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1823 notebookbox5 = dw_box_new( DW_VERT, 5 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1824 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
1825 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
1826 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
1827 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
1828
1920
31179c5a3c5a Change DEPRECATED to DW_INCLUDE_DEPRECATED in dwtest.c so
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1884
diff changeset
1829 #ifdef DW_INCLUDE_DEPRECATED
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1830 notebookbox6 = dw_box_new( DW_VERT, 5 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1831 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
1832 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
1833 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
1834 mdi_add();
1783
9de6d1cc8fb8 Put test program code into DEPRECATED #ifdef again to avoid build warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1769
diff changeset
1835 #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
1836
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1837 notebookbox7 = dw_box_new( DW_VERT, 6 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1838 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
1839 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
1840 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
1841
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1842 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
1843 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
1844 {
2008
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1845 HWND htmlstatus;
2009
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1846 HWND hbox = dw_box_new(DW_HORZ, 0);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1847 HWND item;
2010
617a78dc70aa Added a number of possible javascript snippets to test.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2009
diff changeset
1848 HWND javascript = dw_combobox_new("", 0);
617a78dc70aa Added a number of possible javascript snippets to test.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2009
diff changeset
1849
617a78dc70aa Added a number of possible javascript snippets to test.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2009
diff changeset
1850 dw_listbox_append(javascript, "window.scrollTo(0,500);");
617a78dc70aa Added a number of possible javascript snippets to test.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2009
diff changeset
1851 dw_listbox_append(javascript, "window.document.title;");
2009
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1852
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
1853 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
1854 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
1855 html = dw_html_new(1002);
2009
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1856
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1857 dw_box_pack_start(notebookbox7, hbox, 0, 0, TRUE, FALSE, 0);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1858
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1859 /* Add navigation buttons */
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1860 item = dw_button_new("Back", 0);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1861 dw_box_pack_start(hbox, item, -1, -1, FALSE, FALSE, 0);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1862 dw_signal_connect(item, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(web_back_clicked), DW_POINTER(html));
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1863
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1864 item = dw_button_new("Forward", 0);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1865 dw_box_pack_start(hbox, item, -1, -1, FALSE, FALSE, 0);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1866 dw_signal_connect(item, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(web_forward_clicked), DW_POINTER(html));
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1867
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1868 /* Put in some extra space */
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1869 dw_box_pack_start(hbox, 0, 5, 1, FALSE, FALSE, 0);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1870
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1871 item = dw_button_new("Reload", 0);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1872 dw_box_pack_start(hbox, item, -1, -1, FALSE, FALSE, 0);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1873 dw_signal_connect(item, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(web_reload_clicked), DW_POINTER(html));
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1874
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1875 /* Put in some extra space */
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1876 dw_box_pack_start(hbox, 0, 5, 1, FALSE, FALSE, 0);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1877 dw_box_pack_start(hbox, javascript, -1, -1, TRUE, FALSE, 0);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1878
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1879 item = dw_button_new("Run", 0);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1880 dw_window_set_data(item, "javascript", DW_POINTER(javascript));
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1881 dw_box_pack_start(hbox, item, -1, -1, FALSE, FALSE, 0);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1882 dw_signal_connect(item, DW_SIGNAL_CLICKED, DW_SIGNAL_FUNC(web_run_clicked), DW_POINTER(html));
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1883 dw_window_click_default(javascript, item);
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1884
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
1885 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
1886 dw_html_url(html, "http://dwindows.netlabs.org");
2008
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1887 htmlstatus = dw_status_text_new("HTML status loading...", 0);
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1888 dw_box_pack_start( notebookbox7, htmlstatus, 100, -1, TRUE, FALSE, 1);
74facb490f5a GTK: Fix html changed callbacks when using webkit1.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2002
diff changeset
1889 dw_signal_connect(html, DW_SIGNAL_HTML_CHANGED, DW_SIGNAL_FUNC(web_html_changed), DW_POINTER(htmlstatus));
2009
8577d533b371 Added controls to the test HTML widget, with a field to run javascript.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2008
diff changeset
1890 dw_signal_connect(html, DW_SIGNAL_HTML_RESULT, DW_SIGNAL_FUNC(web_html_result), DW_POINTER(javascript));
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
1891 }
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
1892 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
1893 {
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
1894 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
1895 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
1896 }
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
1897
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1898 notebookbox8 = dw_box_new( DW_VERT, 7 );
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1899 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
1900 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
1901 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
1902 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
1903
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1904 notebookbox9 = dw_box_new( DW_VERT, 8 );
1200
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1905 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
1906 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
1907 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
1908 thread_add();
88b3f27542b0 Added thread/event tab to the test program.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1190
diff changeset
1909
1795
9304241b7b33 Added new dw_window_set_focus() function and attempted to fix...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1791
diff changeset
1910 /* Set the default field */
9304241b7b33 Added new dw_window_set_focus() function and attempted to fix...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1791
diff changeset
1911 dw_window_default(mainwindow, copypastefield);
1798
9fb8339ae458 Add simple test of dw_window_set_focus()
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1795
diff changeset
1912
1685
96fcc01693cf Updated the test program removing deprecated flags and using new
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1684
diff changeset
1913 dw_signal_connect(mainwindow, DW_SIGNAL_DELETE, DW_SIGNAL_FUNC(exit_callback), DW_POINTER(mainwindow));
1844
1558f5e14f83 Added code and comment to the test program demonstrating trapping application quit on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1833
diff changeset
1914 /*
1558f5e14f83 Added code and comment to the test program demonstrating trapping application quit on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1833
diff changeset
1915 * The following is a special case handler for the Mac and other platforms which contain
2031
c4fc33d70a8e Mac: Removed delayed setNeedsDisplay:YES to fix the incorrect dwtest file
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2026
diff changeset
1916 * an application object which can be closed. It functions identically to a window delete/close
1844
1558f5e14f83 Added code and comment to the test program demonstrating trapping application quit on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1833
diff changeset
1917 * request except it applies to the entire application not an individual window. If it is not
1558f5e14f83 Added code and comment to the test program demonstrating trapping application quit on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1833
diff changeset
1918 * handled or you allow the default handler to take place the entire application will close.
1558f5e14f83 Added code and comment to the test program demonstrating trapping application quit on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1833
diff changeset
1919 * On platforms which do not have an application object this line will be ignored.
1558f5e14f83 Added code and comment to the test program demonstrating trapping application quit on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1833
diff changeset
1920 */
1558f5e14f83 Added code and comment to the test program demonstrating trapping application quit on Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1833
diff changeset
1921 dw_signal_connect(DW_DESKTOP, DW_SIGNAL_DELETE, DW_SIGNAL_FUNC(exit_callback), DW_POINTER(mainwindow));
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1922 timerid = dw_timer_connect(2000, DW_SIGNAL_FUNC(timer_callback), 0);
1735
1a7b9b96d9d7 Minor layout changes to the test program so all buttons are
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1685
diff changeset
1923 dw_window_set_size(mainwindow, 640, 550);
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1924 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
1925
1560
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1926 /* 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
1927 * 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
1928 */
954
cfb12bf3bb06 Fixes for some more coordinate system issues on the Mac.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 905
diff changeset
1929 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
1930
1560
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1931 /* 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
1932 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
1933 dw_window_destroy(mainwindow);
1738
d93e860c38d1 Add code to show borderless bitmapbutton.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1735
diff changeset
1934
1560
ee47bda26916 Added some comments and a couple more tests to dwtest.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 1559
diff changeset
1935 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
1936 /* 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
1937 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
1938 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
1939 }