cvsimport
[fvwm.git] / modules / FvwmCommand / scripts / focus-link.1
bloba881deb17993b6e36f08c881d3674fa875a7182c
1 .TH focus-link.pl 1
2 .SH  NAME
3 focus-link.pl - perl FvwmCommand script
4 .SH  SYNOPSIS
5 focus-link.pl [-v]
6 .SH  OPTION
7 -v  show version number and exit.
8 .SH  DESCRIPTION
9 This is a user programmable window focus script.
10 It requires FvwmCommand version 1.5 or later.
11 FvwmCommandS must be invoked from fvwm prior to this command.
13 This script can be invoked from a shell or from .fvwm2rc. For example.
15    AddToFunc "InitFunction"
16    + "I" Exec exec xcb -n 4 -l vertical -g 240x180-0+530
17    + "I" Exec sleep 2; $HOME/scripts/focus-link.pl
19 Sleep is used in order to avoid un-necessary reaction during initial
20 window creation. Note, fvwm itself continues to run during these 2 seconds.
22 Default behavior is listed below.
23 In order to change the behavior, modify user_function using user
24 functions.
25 .IP 1.
26 When a window is opened up, focus the window and move the pointer
27 to it. The parent window regains focus when a window is closed.
28 Parenthood is determined when a window is opened. It is the last
29 focused window with the same X class.
30 .IP 2.
31 #1 would not occur to AcroRead opening window.
32 .IP 3.
33 #1 would not occur when SkipMapping is set and the window is the
34 only window of its class.
35 .IP 4.
36 For Netscape find dialog window, addition to #1, resize the window
37 to 300x150 pixels and move it to East edge of the screen.
38 Download/upload windows will not be focused nor be in focus link
39 list.
40 .IP 5.
41 Move appletviewer to NorthWest corner.
42 .IP 6.
43 Xterm won't focus back to its parent after closed.
44 .IP 7.
45 When a window is de-iconified, focus it and move the pointer.
47 .SH  USER FUNCTIONS
48 These are collection of functions a user can call from programmable
49 section.
50 .SS  move_window [<id>] <direction>
51   or
52 .SS  move_window [<id>] <x> <y>
54 If <id> is prensent in hex format, then move <id> window.
55 Otherwise, move the window in question.
57 If <y> is present, move window to <x> <y> in percentage of screen.
59 If 'p' is appended to <width> or <height>, it specifies in
60 pixel count. And, if <width'p'> or <height'p'> is lead with '-',
61 it signifies that pixel count from right or bottom edge.
63 If <y> does not exist, <dir> must be one of North Northeast East
64 Southeast South Southwest West Northwest to move window to edge.
65 .SS  resize_window [<id>] <width> <height>
67 Resize window to <width> and <height> in percentage of screen size.
69 If <id> is not null, resize <id>. Otherwise resize the
70 window in question.
72 Letter 'p' can be appended to <width> and <height> to specify in
73 pixel count.
74 .SS  focus_window [<id>]
76 If <id> is not null, focus on <id>.
77 Otherwise, focus on the window in question.
78 .SS  warp_to_window [<id>] [<x> <y>]
80 Move pointer to window.
82 If <id> is a window id, warp to <id>.
83 Otherwise, warp to the window in question.
85 If <x> and <y> are present, warp to <x> and <y> percentage of window
86 size down and in from the upper left hand corner.
88 Letter 'p' can be appended to <width> and <height> to specify in pixel
89 count.
90 .SS  class_matches <class> [<resource>]
92 Check if window class and optional resource match.
94 If arg1 is present, and if class matches with <class> and resource
95 matches with <resource>, then return 1.
97 If arg1 is not present, and if class matches with <class> then
98 return 1.
99 Otherwise, return null.
100 .SS  window_flag [<id>] <flag>
102 Return 1 if <flag> is true in the window in question.
103 If <id> is not null, check on <id>. Otherwise check on the
104 window in question.
105 <flag> must be a exact match to one of these:
107   StartIconic
108   OnTop
109   Sticky
110   WindowListSkip
111   SuppressIcon
112   NoiconTitle
113   Lenience
114   StickyIcon
115   CirculateSkipIcon
116   CirculateSkip
117   ClickToFocus
118   SloppyFocus
119   SkipMapping
120   Handles
121   Title
122   Mapped
123   Iconified
124   Transient
125   Visible
126   IconOurs
127   PixmapOurs
128   ShapedIcon
129   Maximized
130   WmTakeFocus
131   WmDeleteWindow
132   IconMoved
133   IconUnmapped
134   MapPending
135   HintOverride
136   MWMButtons
137   MWMBorders
138 .SS  resource_matches <resource>
139 Check if window resource matches pattern <resource>.
140 If it matches, return 1.
141 Otherwise return null.
142 .SS  action_was <action>
143 Check if <action> was taken place.
145 <action> must be a exact match to one of these:
147   new page
148   new desk
149   add
150   raise
151   lower
152   focus change
153   destroy
154   iconify
155   deiconify
156   windowshade
157   dewindowshade
158   end windowlist
159   icon location
160   end configinfo
161   string
162 .SS  get_parent_window [<id>]
164 Return parent window id.
166 If <id> is not null, check on <id>. Otherwise check on the
167 window in question.
168 .SS  no_parent_window [<id>]
170 Return 1 if no parent window exits.
172 If <id> is not null, check on <id>. Otherwise check on the
173 window in question.
174 .SS  delete_from_list
176 Delete the window from link list
177 .SH  SEE ALSO
178 FvwmCommand
179 .SH  AUTHOR
180 Toshi Isogai  isogai@ucsub.colorado.edu