File: FvwmIconMan.html

package info (click to toggle)
fvwm95 2.0.43ba-15
  • links: PTS
  • area: main
  • in suites: potato
  • size: 6,356 kB
  • ctags: 4,759
  • sloc: ansic: 46,398; makefile: 1,586; sh: 782; perl: 328
file content (342 lines) | stat: -rw-r--r-- 12,431 bytes parent folder | download | duplicates (4)
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
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
<HTML>
<BODY>
<PRE>
<!-- Manpage converted by man2html 3.0.1 -->
       FvwmIconMan - an Fvwm Icon Manager


</PRE>
<H2>SYNOPSIS</H2><PRE>
       FvwmIconMan is spawned by fvwm, so no command line invoca-
       tion will work.



</PRE>
<H2>DESCRIPTION</H2><PRE>
       FvwmIconMan is an icon manager modeled after the TWM  icon
       manager.   The  user may have multiple icon managers, each
       of which are armed with a list of window  types  which  it
       manages.  For example, the user may have one manager which
       lists only emacs windows, and another which  lists  every-
       thing else. You may also specify what resolution each icon
       manager uses, for example, one  icon  manager  may  manage
       windows on all desks, and another may manage only those on
       the current desk, or page.

       Unlike the TWM icon manager,  FvwmIconMan  is  limited  in
       only  having  the icons listed vertically. Also unlike the
       TWM icon manager, it sports a three dimensional look (when
       the display depth is sufficient).

       You  may  bind  fvwm functions to mouse buttondown events,
       and to the event where the mouse enters one  of  the  but-
       tons.  For  example, you could bind the first mouse button
       to the Iconify function, and the second  mouse  button  to
       the Identify function.

       FvwmIconMan  can  be set to display which window currently
       has the keyboard focus, and by binding  the  select  event
       (see  below)  to  the fvwm Focus function, you can emulate
       the TWM icon manager's behavior. Unfortunately, the  Focus
       function  warps  the  cursor  to  the  target window. This
       FvwmIconMan distribution includes a patch to  fvwm  2.0.41
       which  modifes  the  behavior of Focus so that it takes an
       argmument to control whether or not it warps the cursor.



</PRE>
<H2>INITIALIZATION</H2><PRE>
       During initialization,  FvwmIconMan  searches  though  the
       fvwm   configuration   file  for  the  options  which  are
       described below. It is highly recommended  that  you  make
       FvwmIconMan  be  a  sticky window. And if you want to make
       use of the followfocus option, and/or binding an action to
       Focus, then you should make FvwmIconMan clicktofocus.



</PRE>
<H2>INVOCATION</H2><PRE>
       FvwmIconMan  can  be invoked by inserting the line 'Module
       FvwmIconMan' in the .fvwmrc file. If FvwmIconMan is to  be
       spawned  during  fvwm's  initialization,  then  this  line
       or keystroke to invoke it  later.  FvwmIconMan  should  be
       placed  in the ModulePath (defined in the .fvwmrc file) in
       order for fvwm to find it.



</PRE>
<H2>CONFIGURATION OPTIONS</H2><PRE>
       With the exception of the nummanagers option, all  of  the
       options  may  be  defined  on a per-manager basis. So, for
       example, the user may have his emacs manager  with  a  red
       foreground,  and his xterm manager with a blue one. A con-
       figuration line may therefore have one of two forms:


       *FvwmIconMan*optionname optionvalue
              To specify that  the  <I>optionname</I>  takes  the  value
              <I>optionvalue</I> for all managers.

       *FvwmIconMan*managerid*optionname optionvalue
              To  specify  that  the  option <I>optionname</I> takes the
              value <I>optionvalue</I> for manager <I>managerid</I>.

              The following options may be specified:


       *FvwmIconMan*nummanagers <I>num</I>
              <I>num</I> is a positive integer specifying the total num-
              ber of icon managers.  Since FvwmIconMan would like
              to know how many managers there are before handling
              any  manager  specific  options,  this  should come
              first. Default is 1.


       *FvwmIconMan*[id*]resolution <I>resolution</I>
              Specifies when the manager will  display  an  entry
              for  a  certain  window. <I>resolution</I> may take one of
              the following values: global,  desk,  or  page.  If
              global,  then  all  windows of the appropriate type
              (see the show and dontshow options below)  will  be
              shown. If desk, then only those windows on the cur-
              rent desk will be down.  And  if  page,  then  only
              those  windows  on  the current page will be shown.
              Default is global.


       *FvwmIconMan*[id*]showtitle <I>boolean</I>
              If <I>true</I>, then print the window title names  in  the
              manager,  if  <I>false</I>,  then  print  the  icon names.
              Default is false.


       *FvwmIconMan*[id*]font <I>font</I>
              Specifies the font to be used for labeling the but-
              Specified the geometry of the manager. If the geom-
              etry is specified with  a  negative  y  coordinate,
              then  the  window manager will grow upwards. Other-
              wise, it will shrink downwards.


       *FvwmIconMan*[id*]foreground <I>foreground</I>
              Specifies the default foreground color.


       *FvwmIconMan*[id*]background <I>background</I>
              Specifies the default background color.


       *FvwmIconMan*[id*]plainbutton <I>style</I> [<I>forecolor</I> <I>backcolor</I>]
              Specifies how normal buttons look. <I>style</I> may be one
              of  <I>flat</I>, <I>up</I>, or <I>down</I>, and describes how the button
              is drawn. The color options are both optional,  and
              if not set, then the default colors are used. If on
              a monochrome  screen,  then  the  <I>style</I>  option  is
              ignored, but must still be set.


       *FvwmIconMan*[id*]selectbutton <I>style</I> [<I>forecolor</I> <I>backcolor</I>]
              Same as the plainbutton option, but  specifies  the
              look of buttons when the mouse is over them.


       *FvwmIconMan*[id*]focusbutton <I>style</I> [<I>forecolor</I> <I>backcolor</I>]
              Same  as  the plainbutton option, but specifies the
              look of buttons whose  windows  have  the  keyboard
              focus.


       *FvwmIconMan*[id*]focusandselectbutton   <I>style</I>  [<I>forecolor</I>
              <I>back-</I> <I>color</I>]
              Same  as  the plainbutton option, but specifies the
              look of buttons which are both selected,  and  have
              the keyboard focus.


       *FvwmIconMan*[id*]action <I>event</I> <I>response</I>[,<I>response...</I>]
              Tells  FvwmIconMan to send the commands in <I>response</I>
              to fvwm when <I>event</I> is done. <I>Event</I> may take  on  one
              of  the  values: select, click1, click2, or click3.
              Default is iconify for all three  buttons  and  nop
              for select.  Select refers to the cursor entering a
              button in the manager.

              The two following options control which windows get
              handled  by  which  managers. A manager can get two
              lists, one of windows to show, and one  of  windows
              list.  If only the <I>dontshow</I> list is given, then the
              manager will show all windows except those  in  the
              list.  If  both lists are given, then a window will
              be shown if it is not in the <I>dontshow</I> list, and  in
              the  <I>show</I>  list.  And  finally,  if neither list is
              given, then the manager will  handle  all  windows.
              Each  list  is  made  up  of  patterns  of the form
              <I>type=pattern</I>, where type is one of <I>class</I>, <I>resource</I>,
              <I>title</I>, or <I>icon</I>, and pattern is a regular expression
              of the same format used in the fvwm style  command.
              Quotes  around the pattern will be taken as part of
              the regular expression. If a window could  be  han-
              dled  by  more  than  one manager, then the manager
              with the lowest id gets it.


       *FvwmIconMan*[id*]show <I>pattern</I> <I>list</I>
              If a window matches one  of  the  patterns  in  the
              list, then it may be handled by this manager.


       *FvwmIconMan*[id*]dontshow <I>pattern</I> <I>list</I>
              If  a  window  matches  one  of the patterns in the
              list, then it may not be handled by this manager.


       *FvwmIconMan*[id*]followfocus <I>boolean</I>
              If <I>boolean</I> is  <I>true</I>,  then  the  button  appearance
              reflects which window currently has focus.  Default
              is false.


       *FvwmIconMan*[id*]sort <I>boolean</I>
              If <I>boolean</I> is <I>true</I>, then the icon manager  is  kept
              sorted. Default is true.



</PRE>
<H2>SAMPLE CONFIGURATION</H2><PRE>
       This  first  example  is  of  a the simplest invocation of
       FvwmIconMan, which only has one manager, and  handles  all
       windows:


       ##############################################################
       # Load any modules which should be started during
       # fvwm initialization
       ModulePath /usr/lib/X11/fvwm:/usr/bin/X11
       Module FvwmIconMan

       # Make FvwmIconMan title-bar-less, sticky, and give it an icon
       Style "Fvwm*"      Icon toolbox.xpm,NoTitle,NoHandles,Sticky
       Style "FvwmIconMan" HandleWidth 5, Handles, BorderWidth 5
       ##############################################################
       #Definitions used by the modules

       *FvwmIconMan*nummanagers 1
       *FvwmIconMan*resolution  global
       *FvwmIconMan*background  slategrey
       *FvwmIconMan*foreground  white
       *FvwmIconMan*font        7x13
       *FvwmIconMan*geometry    194x100-0+73


       This example is my personal configuration. It has two man-
       agers, one for emacs and one for  everything  else,  minus
       things  with  no  icon  title. Only windows on the current
       page are displayed. Notice the argument to  Focus  in  the
       select  action.  This only works if you apply the included
       patch for fvwm. A nonzero argument to focus, or  no  argu-
       ment  results  in  Focus  warping the cursor to the target
       window, and the value of 0 makes Focus not warp  the  cur-
       sor.  Note how the geometry and show options are specified
       per manager, and the others are common to all:


       *FvwmIconMan*numManagers 2
       *FvwmIconMan*Resolution  page
       *FvwmIconMan*background  steelblue
       *FvwmIconMan*foreground  white
       *FvwmIconMan*font        7x13
       *FvwmIconMan*action      click1 Iconify
       *FvwmIconMan*action      click2 Iconify
       *FvwmIconMan*action      click3 Module "FvwmIdent" FvwmIdent
       *FvwmIconMan*action      select Focus 0
       *FvwmIconMan*showtitle   false
       *FvwmIconMan*followfocus true
       *FvwmIconMan*sort        true
       *FvwmIconMan*plainbutton          up white steelblue
       *FvwmIconMan*selectbutton         down white steelblue
       *FvwmIconMan*focusbutton          up white brown
       *FvwmIconMan*focusandselectButton down white brown

       *FvwmIconMan*1*geometry   194x100-204-90
       *FvwmIconMan*1*show       resource=emacs resource=gemacs

       *FvwmIconMan*2*geometry   194x100-0-90
       *FvwmIconMan*2*dontshow   icon=Untitled





</PRE>
<H2>UNFINISHED BUSINESS</H2><PRE>
       There is one bug that I know  of.  A  honest  to  goodness
       solution  to  this would be appreciated. When an icon man-

       When  a  manager  is  in  page resolution, and the page is
       switched, the manager updates the windows after every fvwm
       event  comes  in,  causing  it  to rapidly grow and shrink
       until it finally settles into the new configuration.  This
       doesn't happen when in desk resolution.

       It doesn't handle windows without resource names as grace-
       fully as it should.



</PRE>
<H2>AUTHOR</H2><PRE>
       Brady Montz (bradym@cs.arizona.edu).



</PRE>
<H2>THANKS</H2><PRE>
       Thanks to David Berson (berson@cs.pitt.edu).



































</PRE>
<HR>
<ADDRESS>
Man(1) output converted with
<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
</ADDRESS>
</BODY>
</HTML>