aboutsummaryrefslogtreecommitdiff
path: root/winsup/doc/windres.sgml
blob: 2d54106397f6ee520ccaf05fbdaad455676ebfb0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167

<sect1 id="windres"><title>Defining Windows Resources</title>

<para><filename>windres</filename> reads a Windows resource file
(<filename>*.rc</filename>) and converts it to a res or coff file.
The syntax and semantics of the input file are the same as for any
other resource compiler, so please refer to any publication describing
the Windows resource format for details.  Also, the
<filename>windres</filename> program itself is fully documented in the
Binutils manual.  Here's an example of using it in a project:</para>

<screen>
myapp.exe : myapp.o myapp.res
	gcc -mwindows myapp.o myapp.res -o $@

myapp.res : myapp.rc resource.h
	windres $< -O coff -o $@
</screen>


<para>What follows is a quick-reference to the syntax
<filename>windres</filename> supports.</para>

<screen>

id ACCELERATORS suboptions
BEG
"^C" 12
"Q" 12
65 12
65 12 , VIRTKEY ASCII NOINVERT SHIFT CONTROL ALT
65 12 , VIRTKEY, ASCII, NOINVERT, SHIFT, CONTROL, ALT
(12 is an acc_id)
END

SHIFT, CONTROL, ALT require VIRTKEY


id BITMAP memflags "filename"
memflags defaults to MOVEABLE


id CURSOR memflags "filename"
memflags defaults to MOVEABLE,DISCARDABLE


id DIALOG memflags exstyle x,y,width,height styles BEG controls END
id DIALOGEX memflags exstyle x,y,width,height styles BEG controls END
id DIALOGEX memflags exstyle x,y,width,height,helpid styles BEG controls END

memflags defaults to MOVEABLE
exstyle may be EXSTYLE=number
styles:	CAPTION "string"
	CLASS id
	STYLE  FOO | NOT FOO | (12)
	EXSTYLE number
	FONT number, "name"
	FONT number, "name",weight,italic
	MENU id
	CHARACTERISTICS number
	LANGUAGE number,number
	VERSIONK number
controls:
	AUTO3STATE params
	AUTOCHECKBOX params
	AUTORADIOBUTTON params
	BEDIT params
	CHECKBOX params
	COMBOBOX params
	CONTROL ["name",] id, class, style, x,y,w,h [,exstyle] [data]
	CONTROL ["name",] id, class, style, x,y,w,h, exstyle, helpid [data]
	CTEXT params
	DEFPUSHBUTTON params
	EDITTEXT params
	GROUPBOX params
	HEDIT params
	ICON ["name",] id, x,y [data]
	ICON ["name",] id, x,y,w,h, style, exstyle [data]
	ICON ["name",] id, x,y,w,h, style, exstyle, helpid [data]
	IEDIT params
	LISTBOX params
	LTEXT params
	PUSHBOX params
	PUSHBUTTON params
	RADIOBUTTON params
	RTEXT params
	SCROLLBAR params
	STATE3 params
	USERBUTTON "string", id, x,y,w,h, style, exstyle
params:
	["name",] id, x, y, w, h, [data]
	["name",] id, x, y, w, h, style [,exstyle] [data]
	["name",] id, x, y, w, h, style, exstyle, helpid [data]

[data] is optional BEG (string|number) [,(string|number)] (etc) END


id FONT memflags "filename"
memflags defaults to MOVEABLE|DISCARDABLE

id ICON memflags "filename"
memflags defaults to MOVEABLE|DISCARDABLE

LANGUAGE num,num

id MENU options BEG items END
items:
	"string", id, flags
	SEPARATOR
	POPUP "string" flags BEG menuitems END
flags:
	CHECKED
	GRAYED
	HELP
	INACTIVE
	MENUBARBREAK
	MENUBREAK

id MENUEX suboptions BEG items END
items:
	MENUITEM "string"
	MENUITEM "string", id
	MENUITEM "string", id, type [,state]
	POPUP "string" BEG items END
	POPUP "string", id BEG items END
	POPUP "string", id, type BEG items END
	POPUP "string", id, type, state [,helpid] BEG items END

id MESSAGETABLE memflags "filename"
memflags defaults to MOVEABLE

id RCDATA suboptions BEG (string|number) [,(string|number)] (etc) END

STRINGTABLE suboptions BEG strings END
strings:
	id "string"
	id, "string"

(User data)
id id suboptions BEG (string|number) [,(string|number)] (etc) END

id VERSIONINFO stuffs BEG verblocks END
stuffs:	FILEVERSION num,num,num,num
	PRODUCTVERSION num,num,num,num
	FILEFLAGSMASK num
	FILEOS num
	FILETYPE num
	FILESUBTYPE num
verblocks:
	BLOCK "StringFileInfo" BEG BLOCK BEG vervals END END
	BLOCK "VarFileInfo" BEG BLOCK BEG vertrans END END
vervals: VALUE "foo","bar"
vertrans: VALUE num,num



suboptions:
	memflags
	CHARACTERISTICS num
	LANGUAGE num,num
	VERSIONK num

memflags are MOVEABLE/FIXED PURE/IMPURE PRELOAD/LOADONCALL DISCARDABLE

</screen>

</sect1>