Jitterbug no more.
[fvwm.git] / doc / commands / TitleStyle.xml
blob920f9d530ba216d4ca573427a24ce26eadabbfa9
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!-- $Id: TitleStyle.xml,v 1.3 2007/06/16 12:38:46 griph Exp $ -->
3 <!DOCTYPE part PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
4   "../docbook-xml/docbookx.dtd"
6 <!ENTITY % myents SYSTEM "../fvwm.ent" >
7 %myents;
8 ]>
11 <section id='TitleStyle'>
12 <title>TitleStyle</title>
14 <cmdsynopsis>
15         <command>TitleStyle</command
16         ><arg choice='opt'
17                 ><replaceable>justification</replaceable
18         ></arg
19         ><arg choice='opt'
20                 >Height <optional
21                         ><replaceable>num</replaceable
22                 ></optional
23         ></arg
24         ><arg choice='opt'
25                 >MinHeight <optional
26                         ><replaceable>num</replaceable
27                 ></optional
28         ></arg>
29 </cmdsynopsis>
31 <para>Sets attributes for the title-bar.  Justifications can be
32 <fvwmopt cmd="TitleStyle" opt="Centered"/>,
33 <fvwmopt cmd="TitleStyle" opt="RightJustified"/> or
34 <fvwmopt cmd="TitleStyle" opt="LeftJustified"/>.
35 <fvwmopt cmd="TitleStyle" opt="Height"/>
36 sets the title bar's height to an amount in pixels.
37 <fvwmopt cmd="TitleStyle" opt="MinHeight"/>
38 sets the minimal height in pixels of the title bar.
39 Defaults are
40 <emphasis remap='I'>Centered</emphasis>,
41 the window's font height and no minimal height.
42 To reset the font height to the
43 default value, omit the
44 <replaceable>num</replaceable>
45 argument after the
46 <emphasis remap='I'>Height</emphasis>
47 keyword. The
48 <emphasis remap='I'>MinHeight</emphasis>
49 height is reseted by
50 <emphasis remap='I'>Height</emphasis>
51 or if given with no argument.
52 Example:</para>
54 <programlisting>
55 TitleStyle LeftJustified Height 24
56 </programlisting>
59 <cmdsynopsis>
60         <command>TitleStyle</command
61         ><arg choice='opt'
62                 ><replaceable>state</replaceable
63         ></arg
64         ><arg choice='opt'
65                 ><replaceable>style</replaceable
66         ></arg
67         ><arg choice='opt'
68                 >-- <arg choice='plain' rep='repeat'
69                         ><optional>!</optional
70                         ><replaceable>flag</replaceable
71                 ></arg
72         ></arg>
73 </cmdsynopsis>
76 <para>Sets the style for the title-bar.
77 See also
78 <fvwmref cmd="AddTitleStyle"/> and <fvwmref cmd="ButtonStyle" />
79 <replaceable>state</replaceable>
80 can be one of "<fvwmref cmd="ButtonStyle" opt="ActiveUp"/>",
81 "<fvwmref cmd="ButtonStyle" opt="ActiveDown"/>",
82 "<fvwmref cmd="ButtonStyle" opt="InactiveUp"/>",
83 or "<fvwmref cmd="ButtonStyle" opt="InactiveDown"/>".  Shortcuts like
84 "<fvwmref cmd="ButtonStyle" opt="Active"/>" and
85 "<fvwmref cmd="ButtonStyle" opt="Inactive"/>" are
86 allowed.  The states with the "Toggled" prefix are allowed too,
87 the title itself does not use "Toggled" states, but these states
88 are used for the buttons with
89 <fvwmref cmd="ButtonStyle"/>
90 <fvwmref cmd="ButtonStyle" opt="UseTitleStyle" />.
92 <replaceable>state</replaceable>
93 is omitted, then the
94 <replaceable>style</replaceable>
95 is added to every state.  If parentheses are placed around the
96 <replaceable>style</replaceable> and <replaceable>flags</replaceable>,
97 then multiple state definitions can be given per line.
98 <replaceable>style</replaceable>
99 can be omitted so that flags can be set while not destroying the
100 current style.</para>
102 <para>If a
104 is prefixed to any
105 <replaceable>flag</replaceable>,
106 its behavior is negated.  Valid flags for each state include
107 <fvwmref cmd="ButtonStyle" opt="Raised"/>,
108 <fvwmref cmd="ButtonStyle" opt="Flat"/> and 
109 <fvwmref cmd="ButtonStyle" opt="Sunk"/>
110 (these are mutually exclusive).  The default is
111 <fvwmref cmd="ButtonStyle" opt="Raised"/>.
112 See the note in
113 <fvwmref cmd="ButtonStyle"/>
114 regarding the "<fvwmref cmd="ButtonStyle" opt="ActiveDown"/>" state.  Examples:</para>
116 <programlisting>
117 TitleStyle ActiveUp HGradient 16 navy black
118 TitleStyle \
119         ActiveDown (Solid red -- flat) \
120         Inactive (TiledPixmap wood.xpm)
121 TitleStyle \
122         ActiveUp (-- Flat) \
123         ActiveDown (-- Raised) \
124         InactiveUp (-- Flat) \
125         InactiveDown (-- Sunk)
126 </programlisting>
128 <para>This sets the "ActiveUp" state to a horizontal gradient, the
129 "ActiveDown" state to solid red, and the "Inactive" states to a
130 tiled wood pixmap. Finally, "ActiveUp" and "InactiveUp" are set
131 to look flat, while "ActiveDown" set to be sunk (the
132 <fvwmref cmd="ButtonStyle" opt="Raised"/>
133 flag for the "ActiveDown" state causes it to appear sunk due to
134 relief inversion), and "InactiveDown" is set to look raised. An
135 example which sets flags for all states:</para>
137 <programlisting>
138 TitleStyle -- flat
139 </programlisting>
141 <para>For a flattened look:</para>
143 <programlisting>
144 TitleStyle -- flat
145 <fvwmref cmd="ButtonStyle"/> <fvwmref cmd="All"/> Active (-- flat) Inactive (-- flat)
146 </programlisting>
149 <para><emphasis remap='B'>TitleStyle</emphasis>
150 accepts all the
151 <fvwmref cmd="ButtonStyle"/>
152  styles and arguments:</para>
154 <para><fvwmref cmd="ButtonStyle" opt="Simple"/>,
155 <fvwmref cmd="ButtonStyle" opt="Default"/>,
156 <fvwmref cmd="ButtonStyle" opt="Solid"/>,
157 <fvwmref cmd="ButtonStyle" opt="Colorset"/>,
158 <fvwmref cmd="ButtonStyle" opt="Vector"/>,
159 <fvwmref cmd="ButtonStyle" opt="?Gradient"/>,
160 <fvwmref cmd="ButtonStyle" opt="Pixmap"/>,
161 <fvwmref cmd="ButtonStyle" opt="AdjustedPixmap"/>,
162 <fvwmref cmd="ButtonStyle" opt="ShrunkPixmap"/>,
163 <fvwmref cmd="ButtonStyle" opt="StretchedPixmap"/>,
164 <fvwmref cmd="ButtonStyle" opt="TiledPixmap"/>,
165 <fvwmref cmd="ButtonStyle" opt="MiniIcon"/>.</para>
167 <para>See the
168 <fvwmref cmd="ButtonStyle"/>
169 command for a description of all these styles and their arguments.</para>
171 <para>In addition to these styles
172 <emphasis remap='B'>TitleStyle</emphasis>
173 accepts a powerful
174 <fvwmopt cmd="TitleStyle" opt="MultiPixmap"/>
175 option. This allows you to specify different pixmaps, colorsets or
176 colors for different parts of the titlebar. Some of them are tiled or
177 stretched to fit a particular space; others are discrete "transition"
178 images. The definable
179 <fvwmref cmd="ButtonStyle" opt="sections"/>
180 are:</para>
182 <variablelist>
183         <varlistentry>
184                 <term><fvwmopt cmd="TitleStyle" opt="Main"/></term>
185                 <listitem><para>The full titlebar</para></listitem>
186         </varlistentry>
187         <varlistentry>
188                 <term><fvwmopt cmd="TitleStyle" opt="LeftMain"/></term>
189                 <listitem><para>Left of title text</para></listitem>
190         </varlistentry>
191         <varlistentry>
192                 <term><fvwmopt cmd="TitleStyle" opt="RightMain"/></term>
193                 <listitem><para>Right of title text</para></listitem>
194         </varlistentry>
195         <varlistentry>
196                 <term><fvwmopt cmd="TitleStyle" opt="UnderText"/></term>
197                 <listitem><para>Underneath title text</para></listitem>
198         </varlistentry>
199         <varlistentry>
200                 <term><fvwmopt cmd="TitleStyle" opt="LeftOfText"/></term>
201                 <listitem><para>just to the left of the title text</para></listitem>
202         </varlistentry>
203         <varlistentry>
204                 <term><fvwmopt cmd="TitleStyle" opt="RightOfText"/></term>
205                 <listitem><para>just to the right of the title text</para></listitem>
206         </varlistentry>
207         <varlistentry>
208                 <term><fvwmopt cmd="TitleStyle" opt="LeftEnd"/></term>
209                 <listitem><para>at the far left end of the titlebar
210   (just after left buttons if any)</para></listitem>
211         </varlistentry>
212         <varlistentry>
213                 <term><fvwmopt cmd="TitleStyle" opt="RightEnd"/></term>
214                 <listitem><para>at the far right end of the titlebar
215                         (just before right buttons if any)</para></listitem>
216         </varlistentry>
217         <varlistentry>
218                 <term><fvwmopt cmd="TilteStyle" opt="Buttons"/></term>
219                 <listitem><para>under buttons in case of
220                     <fvwmopt cmd="ButtonStyle" opt="UseTitleStyle"/>
221                 </para></listitem>
222         </varlistentry>
223         <varlistentry>
224                 <term><fvwmopt cmd="TitleStyle" opt="LeftButtons"/></term>
225                 <listitem><para>under left buttons in case of
226                     <fvwmopt cmd="ButtonStyle" opt="UseTitleStyle"/>
227                 </para></listitem>
228         </varlistentry>
229         <varlistentry>
230                 <term><fvwmopt cmd="TitleStyle" opt="RightButtons"/></term>
231                 <listitem><para>under right buttons in case of
232                     <fvwmopt cmd="ButtonStyle" opt="UseTitleStyle"/>
233                 </para></listitem>
234         </varlistentry>
235 </variablelist>
237 <para>None of these are mandatory except for
238 <emphasis>Main</emphasis>
239 (or, if you do not define
240 <emphasis>Main</emphasis>
241 you must define both
242 <emphasis>LeftMain</emphasis> and <emphasis>RightMain</emphasis>).
243 If no
244 <emphasis>Buttons</emphasis>
245 pixmaps are defined and
246 <fvwmref cmd="ButtonStyle" opt="UseTitleStyle"/>
247 is specified for one or more buttons,
248 <emphasis>Main</emphasis>,
249 <emphasis>LeftMain</emphasis> or <emphasis>RightMain</emphasis>
250 are used as appropriate.</para>
252 <para>The syntax for this style type is:</para>
254 <programlisting>
255 MultiPixmap section style arg, ...
256 </programlisting>
258 <para>continuing for whatever you want to define. The
259 <replaceable>style</replaceable>
260 can be either
261 <fvwmref cmd="ButtonStyle" opt="TiledPixmap"/>, <fvwmref cmd="ButtonStyle" opt="AdjustedPixmap"/>, <fvwmref cmd="ButtonStyle" opt="Colorset"/> or <fvwmref cmd="ButtonStyle" opt="Solid"/>.
262 See the
263 <fvwmref cmd="ButtonStyle"/>
264 command for the description of these styles.
265 In the case of a transition section,
266 <emphasis>LeftEnd</emphasis>, <emphasis>LeftOfText</emphasis>,
267 <emphasis>RightOfText</emphasis> or <emphasis>RightEnd</emphasis>,
268 <fvwmref cmd="ButtonStyle" opt="AdjustedPixmap"/>
269 only resize the pixmap in the "y" direction. For the
270 <fvwmref cmd="ButtonStyle" opt="Colorset"/> and <fvwmref cmd="ButtonStyle" opt="Solid"/>
271 styles a width of the half of the title bar height is assumed
272 for the transition sections.</para>
274 <para>An example:</para>
276 <programlisting>
277 MultiPixmap Main AdjustedPixmap foo.xpm, \
278             UnderText TiledPixmap bar.xpm, \
279             Buttons <fvwmref cmd="ButtonStyle" opt="Colorset"/> 2
280 </programlisting>
282 <para>Note that the old syntax is still supported: if the style is omitted,
283 <fvwmref cmd="ButtonStyle" opt="TiledPixmap"/>
284 is assumed and adding "(stretched)" between the section and the
285 file name implies
286 <fvwmref cmd="ButtonStyle" opt="AdjustedPixmap"/>.</para>
288 </section>