annotate README.txt @ 188:03f179597782

Make WinXP themes work with windows resources
author Frank Benoit <benoit@tionex.de>
date Sat, 15 Mar 2008 00:33:19 +0100
parents e0ea5a76da07
children f9012ceeafea
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
58
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
1
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
2 DWT-Win
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
3 =======
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
4
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
5 Requirements:
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
6 =============
176
e0ea5a76da07 README edits
Frank Benoit <benoit@tionex.de>
parents: 160
diff changeset
7 Buildtool : DSSS 0.75
e0ea5a76da07 README edits
Frank Benoit <benoit@tionex.de>
parents: 160
diff changeset
8 Compiler : DMD 1.027
e0ea5a76da07 README edits
Frank Benoit <benoit@tionex.de>
parents: 160
diff changeset
9 D Lib : Tango release 0.99.5
99
873874015a62 Explanation where to get the import libs
Frank Benoit <benoit@tionex.de>
parents: 78
diff changeset
10 Import libs
873874015a62 Explanation where to get the import libs
Frank Benoit <benoit@tionex.de>
parents: 78
diff changeset
11
873874015a62 Explanation where to get the import libs
Frank Benoit <benoit@tionex.de>
parents: 78
diff changeset
12 Import libs:
873874015a62 Explanation where to get the import libs
Frank Benoit <benoit@tionex.de>
parents: 78
diff changeset
13 ============
102
40c02ead0a2c resource manifest
Frank Benoit <benoit@tionex.de>
parents: 100
diff changeset
14 To link everything you need the import libs.
40c02ead0a2c resource manifest
Frank Benoit <benoit@tionex.de>
parents: 100
diff changeset
15 They are not included in the source repository, please use this archive
99
873874015a62 Explanation where to get the import libs
Frank Benoit <benoit@tionex.de>
parents: 78
diff changeset
16
873874015a62 Explanation where to get the import libs
Frank Benoit <benoit@tionex.de>
parents: 78
diff changeset
17 http://downloads.dsource.org/projects/dwt-linux/dwt-win-libs.zip
873874015a62 Explanation where to get the import libs
Frank Benoit <benoit@tionex.de>
parents: 78
diff changeset
18
873874015a62 Explanation where to get the import libs
Frank Benoit <benoit@tionex.de>
parents: 78
diff changeset
19 They don't contain any DWT code, only the import libraries to link to the windows system DLLs.
58
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
20
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
21
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
22 Building with dsss
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
23 ===================
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
24 Per default dsss has the option 'oneatatime' enable.
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
25 This make dsss to compile one file at a time and building dwt take longer than 15 min.
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
26 Disable this option in the dsss/etc/rebuild/dmd-win-tango file.
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
27 Search for it (2 matches) and either delete those lines of change =on to =off.
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
28
157
f8001bf383d2 TextLayout allow null for setText
Frank Benoit <benoit@tionex.de>
parents: 148
diff changeset
29 In some situations, you may get linker errors when building the dwt examples.
148
029d0df3f515 update readme file
John Reimer <terminal.node@gmail.com>
parents: 129
diff changeset
30 Try adding the "-full" switch to the dsss command line to fix these errors.
029d0df3f515 update readme file
John Reimer <terminal.node@gmail.com>
parents: 129
diff changeset
31
029d0df3f515 update readme file
John Reimer <terminal.node@gmail.com>
parents: 129
diff changeset
32 Example:
029d0df3f515 update readme file
John Reimer <terminal.node@gmail.com>
parents: 129
diff changeset
33
157
f8001bf383d2 TextLayout allow null for setText
Frank Benoit <benoit@tionex.de>
parents: 148
diff changeset
34 dsss build -full simple
148
029d0df3f515 update readme file
John Reimer <terminal.node@gmail.com>
parents: 129
diff changeset
35
100
8e89c07402e9 Describe subsystem linker switch
Frank Benoit <benoit@tionex.de>
parents: 99
diff changeset
36 Subsystem linker option
8e89c07402e9 Describe subsystem linker switch
Frank Benoit <benoit@tionex.de>
parents: 99
diff changeset
37 =======================
102
40c02ead0a2c resource manifest
Frank Benoit <benoit@tionex.de>
parents: 100
diff changeset
38 For dmd linker 'optlink' there is the option SUBSYSTEM which defines if the executable
100
8e89c07402e9 Describe subsystem linker switch
Frank Benoit <benoit@tionex.de>
parents: 99
diff changeset
39 shall be a console or windows application and the minimum required windows version (4=win95,5=win2000,6=vista)
8e89c07402e9 Describe subsystem linker switch
Frank Benoit <benoit@tionex.de>
parents: 99
diff changeset
40 -L/SUBSYSTEM:windows:5
8e89c07402e9 Describe subsystem linker switch
Frank Benoit <benoit@tionex.de>
parents: 99
diff changeset
41 Without this option, DWT renderes some controls not correctly. Eg. table headers are not shown.
8e89c07402e9 Describe subsystem linker switch
Frank Benoit <benoit@tionex.de>
parents: 99
diff changeset
42
188
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
43
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
44 WinXP Theming and Controls
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
45 ==========================
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
46 With WinXP it is required to make windows use a manifest.
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
47 There are several ways to make this manifest available.
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
48 1.) Place the manifest file in the same directory where the .exe is.
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
49 E.g.
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
50 application.exe
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
51 application.exe.manifest
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
52 2.) Link the content of the manifest to the application as a windows resource.
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
53 3.) Have another program that uses resource injection to put the manifest into the application
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
54 4.) Let the application write the manifest to a an external file and load it.
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
55 This had problems in the past, some applications on some machines did not load images.
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
56
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
57 1. .. 3.) Seems to work reliable.
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
58
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
59 * Using 2.
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
60 compile the dwt.rc/dwt.exe.manifest files with rcc.exe from the digitalmars to create the dwt.res.
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
61 rcc dwt.rc
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
62 link the resulting dwt.res with the -L/rc:dwt.res
03f179597782 Make WinXP themes work with windows resources
Frank Benoit <benoit@tionex.de>
parents: 176
diff changeset
63
129
18ca5d3c6dfc Chg to SWT: Allow MessageBox without parent, when instantiated over special ctor.
Frank Benoit <benoit@tionex.de>
parents: 102
diff changeset
64 Changes/Additions to SWT
18ca5d3c6dfc Chg to SWT: Allow MessageBox without parent, when instantiated over special ctor.
Frank Benoit <benoit@tionex.de>
parents: 102
diff changeset
65 ========================
18ca5d3c6dfc Chg to SWT: Allow MessageBox without parent, when instantiated over special ctor.
Frank Benoit <benoit@tionex.de>
parents: 102
diff changeset
66 o MessageBox can be instantiated without parent. Use the Ctor "this( int style )",
18ca5d3c6dfc Chg to SWT: Allow MessageBox without parent, when instantiated over special ctor.
Frank Benoit <benoit@tionex.de>
parents: 102
diff changeset
67 calling the other ctors will still force a non-null parent.
157
f8001bf383d2 TextLayout allow null for setText
Frank Benoit <benoit@tionex.de>
parents: 148
diff changeset
68 o Allow null argument for
f8001bf383d2 TextLayout allow null for setText
Frank Benoit <benoit@tionex.de>
parents: 148
diff changeset
69 - dwt.graphics.TextLayout setText(char[])
100
8e89c07402e9 Describe subsystem linker switch
Frank Benoit <benoit@tionex.de>
parents: 99
diff changeset
70
8e89c07402e9 Describe subsystem linker switch
Frank Benoit <benoit@tionex.de>
parents: 99
diff changeset
71
8e89c07402e9 Describe subsystem linker switch
Frank Benoit <benoit@tionex.de>
parents: 99
diff changeset
72