~ubuntu-branches/ubuntu/utopic/kde-workspace/utopic-proposed

« back to all changes in this revision

Viewing changes to kwin/scripting/kwsapi.html

  • Committer: Bazaar Package Importer
  • Author(s): Michał Zając
  • Date: 2011-07-09 08:31:15 UTC
  • Revision ID: james.westby@ubuntu.com-20110709083115-ohyxn6z93mily9fc
Tags: upstream-4.6.90
Import upstream version 4.6.90

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<?xml version="1.0" encoding="UTF-8"?>
 
2
<html xmlns="http://www.w3.org/1999/xhtml/" lang="en" xml:lang="en">
 
3
  <head>
 
4
    <title>KWinScripting :: APIDoX</title>
 
5
    <link rel="stylesheet" href="apistyle.css" type="text/css" media="screen"/>
 
6
  </head>
 
7
  <body>
 
8
    <div style="width: 100%; height: 100px; border-right: 10px solid #323232; background: #8A0349; margin-bottom: 10pt;">
 
9
      <h1 style="color: #FFFFFF; padding-left: 10px; padding-top: 40px; font-size: 25px; font-family: Helvetica;">KWinScripting API DoX</h1>
 
10
    </div>
 
11
    <div id="root">
 
12
 <div xmlns="" id="class_workspace" class="classes"><h2>workspace<sup>[<em>singleton</em>]</sup></h2><div id="events_workspace" class="events"><h3>Events</h3><div class="event"><h4>workspace.currentDesktopChaned</h4><p class="desc">Emitted when the user switches from a virtual desktop to another.</p><ul><li><strong>old_desk {integer}</strong>: The number of the virtual desktop the user switched from.</li></ul></div><div class="event"><h4>workspace.clientSetKeepAbove</h4><p class="desc">Emitted whenever a client's 'Keep Above' property is changed. setabove_client holds the client object of the client whose property was modified and the parameter 'set' is '1' if the 'Keep Above' was set, or '0' otherwise.</p><ul><li><strong>setabove_client {client}</strong>: The Client whose 'Keep Above' property was set or cleared.</li><li><strong>set {boolean}</strong>: Specifies if the property was set or cleared</li></ul></div><div class="event"><h4>workspace.desktopPresenceChanged</h4><p class="desc">Emitted whenever a client is moved across virtual desktops. The client's previous desktop is available through the old_desk parameter, whereas the current desktop can be fetched using moved_client.desktop</p><ul><li><strong>moved_client {client}</strong>: The client which was moved from desktop old_desk to the new one</li><li><strong>old_desk {integer}</strong>: The previous desktop on which the client was present</li></ul></div><div class="event"><h4>workspace.clientAdded</h4><p class="desc">Emitted whenever a new client is added to the workspace. This generally occurs when a new window is opened which includes dialog boxes, windows etc. However, it is NOT emitted for unmanaged clients like the Alt+Tab switcher.</p><ul><li><strong>added_client {client}</strong>: The client which was added.</li></ul></div><div class="event"><h4>workspace.clientManaging</h4><p class="desc">Emitted whenever a client is being managed by the KWin subsystem. The difference between workspace.clientManaging and workspace.clientAdded is that clientManaging is emitted BEFORE clientAdded. Also, if KWin is restarted with a list of clients C, then the clientManaging event will be emitted for every client in C, but clientAdded will not.</p><ul><li><strong>managing_client {client}</strong>: The client which is being managed.</li></ul></div><div class="event"><h4>workspace.clientMinimized</h4><p class="desc">Emitted whenever a client is minimized.</p><ul><li><strong>minimized_client {client}</strong>: The client which was minimized.</li></ul></div><div class="event"><h4>workspace.clientMaximizeSet</h4><p class="desc">Emitted whenever a client is maximized in a particular orientation. The orientation i.e. the rectangular direction in which the client was specified to occupy the entire available space is specified by the two parameters horizontally and vertically. If both are true, the client was maximized fully i.e. asked to occupy the entire workspace are available.</p><ul><li><strong>maximized_client {client}</strong>: The client which was maximized (in a certain orientation).</li><li><strong>horizontally {boolean}</strong>: (true) if the client was maximized horizontally, (false) otherwise.</li><li><strong>vertically {boolean}</strong>: (true) if the client was maximized vertically, (false) otherwise.</li></ul></div><div class="event"><h4>workspace.killWindowCalled</h4><p class="desc">Emitted whenever the user requests a Kill Window [generally using the Ctrl+Esc combination]. The parameter killwindow_client is not completely safe and may return kill windows out of order of invocation. This is just a fancy function, avoid using. Instead, use workspace.clientAdded and filter for incoming Kill Windows.</p><ul><li><strong>killwindow_client {client}</strong>: The client handle to the kill window that was called.</li></ul></div><div class="event"><h4>workspace.clientActivated</h4><p class="desc">Emitted whenever a client is given focus or 'activated'.</p><ul><li><strong>activated_client {client}</strong>: The client which was activated (or received focus).</li></ul></div><div class="event"><h4>workspace.clientFullScreenSet</h4><p class="desc">Emitted whenever a client is set to full screen or unset. The fss_set parameter can be used to determine whether the client was set or unset.</p><ul><li><strong>fss_set {boolean}</strong>: (true) if the client was switched to full screen mode, (false) if it was switched from full screen mode.</li><li><strong>fss_client {client}</strong>: The client which was set/unset to fullscreen.</li></ul></div><div class="event"><h4>workspace.clientUnminimized</h4><p class="desc">Emitted whenever a client is Unminimized (or restored).</p><ul><li><strong>unm_client {client}</strong>: The client which was unminimzed.</li></ul></div></div><div id="methods_workspace" class="methods"><h3>Methods</h3><div class="method"><h4>workspace.getAllClients
 
13
                [ret: Array(client)]
 
14
            </h4><ul><li>workspace.getAllClients(
 
15
        desktop_no {integer}
 
16
        )
 
17
    </li></ul><p class="desc">Gets all clients on the virtual desktop desktop_no. If no desktop number is specified then it fetches all the clients. To specifically isolate clients which are on 'All desktops', set the desktop_no parameter to -1.</p><ul><li><strong>desktop_no {integer}</strong>: The desktop number belonging to which the clients are to be fetched.</li></ul></div><div class="method"><h4>workspace.dimensions
 
18
                [ret: qsize]
 
19
            </h4><ul><li>workspace.dimensions(
 
20
        
 
21
        )
 
22
    </li></ul><p class="desc">Returns the dimensions of the workspace in pixels.</p><ul/></div><div class="method"><h4>workspace.desktopGridSize
 
23
                [ret: qsize]
 
24
            </h4><ul><li>workspace.desktopGridSize(
 
25
        
 
26
        )
 
27
    </li></ul><p class="desc">Returns the desktop size in grid units. In essence, it returns the order of a rectangular matrix, where each element is a virtual desktop and the rows and columns specify the number of virtual desktops and the way of arrangement.</p><ul/></div><div class="method"><h4>workspace.activeClient
 
28
                [ret: client]
 
29
            </h4><ul><li>workspace.activeClient(
 
30
        
 
31
        )
 
32
    </li></ul><p class="desc">Returns the client which currently has focus.</p><ul/></div><div class="method"><h4>workspace.clientGroups
 
33
                [ret: Array(clientgroup)]
 
34
            </h4><ul><li>workspace.clientGroups(
 
35
        
 
36
        )
 
37
    </li></ul><p class="desc">Returns an array of all the ClientGroups from the current workspace.</p><ul/></div></div><div id="props_workspace" class="props"><h3>Properties</h3><div class="prop"><h4>workspace.currentDesktop
 
38
                [ret: integer]
 
39
            <sup>[GO]</sup></h4><p class="desc">Returns the current desktop number of the workspace.</p></div></div></div>
 
40
 
 
41
 <div xmlns="" id="class_toplevel" class="classes"><h2>toplevel<sup>[<em>floating</em>]</sup></h2><div id="events_toplevel" class="events"><h3>Events</h3></div><div id="methods_toplevel" class="methods"><h3>Methods</h3><div class="method"><h4>toplevel.x
 
42
                [ret: integer]
 
43
            </h4><ul><li>toplevel.x(
 
44
        
 
45
        )
 
46
    </li></ul><p class="desc">Returns the x co-ordinate of the toplevel client (or the client).</p><ul/></div><div class="method"><h4>toplevel.y
 
47
                [ret: integer]
 
48
            </h4><ul><li>toplevel.y(
 
49
        
 
50
        )
 
51
    </li></ul><p class="desc">Returns the y co-ordinate of the toplevel client (or the client).</p><ul/></div><div class="method"><h4>toplevel.width
 
52
                [ret: integer]
 
53
            </h4><ul><li>toplevel.width(
 
54
        
 
55
        )
 
56
    </li></ul><p class="desc">Returns the width of the toplevel client (or the client).</p><ul/></div><div class="method"><h4>toplevel.height
 
57
                [ret: integer]
 
58
            </h4><ul><li>toplevel.height(
 
59
        
 
60
        )
 
61
    </li></ul><p class="desc">Returns the height of the toplevel client (or the client).</p><ul/></div><div class="method"><h4>toplevel.size
 
62
                [ret: qsize]
 
63
            </h4><ul><li>toplevel.size(
 
64
        
 
65
        )
 
66
    </li></ul><p class="desc">Returns the size of the toplevel client (or the client).</p><ul/></div><div class="method"><h4>toplevel.pos
 
67
                [ret: qpoint]
 
68
            </h4><ul><li>toplevel.pos(
 
69
        
 
70
        )
 
71
    </li></ul><p class="desc">Returns the position of the toplevel client (or the client).</p><ul/></div><div class="method"><h4>toplevel.opacity
 
72
                [ret: decimal]
 
73
            </h4><ul><li>toplevel.opacity(
 
74
        
 
75
        )
 
76
    </li></ul><p class="desc">Returns the opacity (or 1 - transperency) of the toplevel client (or the client).</p><ul/></div><div class="method"><h4>toplevel.hasAlpha
 
77
                [ret: bool]
 
78
            </h4><ul><li>toplevel.hasAlpha(
 
79
        
 
80
        )
 
81
    </li></ul><p class="desc">Returns (true) if the client can be made translucent i.e. opacity can be set to values other than 0 or 1, (false) otherwise. NOTE: If compositing is OFF, then clients may still show that translucency is possible, but translucency is not possible without compositing being ON.</p><ul/></div><div class="method"><h4>toplevel.setOpacity</h4><ul><li>toplevel.setOpacity(
 
82
        opacity_v {decimal}
 
83
        )
 
84
    </li></ul><p class="desc">Sets the opacity of the client to opacity_v or sets transperency to (1 - opacity_v). NOTE: If compositing is OFF, this function has no effect for any values between 0 and 1 (exclusive).</p><ul><li><strong>opacity_v {decimal}</strong>: The opacity to be set (on a scale of 0-1).</li></ul></div></div><div id="props_toplevel" class="props"><h3>Properties</h3></div></div>
 
85
 
 
86
 <div xmlns="" id="class_client" class="classes"><h2>client<sup>[<em>floating</em>]</sup></h2><div id="events_client" class="events"><h3>Events</h3><div class="event"><h4>client.clientMoved</h4><p class="desc">Emitted whenever the client is moved or it's geometry changed. This includes when a client is resized.</p><ul/></div><div class="event"><h4>client.onSetKeepAbove</h4><p class="desc">Emitted whenever the client's 'Keep Above' property is set or cleared. 'set' is 1 if the client was set to 'Keep Above', 0 otherwise. Equivalent to workspace.clientSetKeepAbove, but for a specific client. Use wherever possible instead of workspace.clientSetKeepAbove to improve performance.</p><ul><li><strong>set {boolean}</strong>: Specifies whether the 'Keep Above' property was set or cleared.</li></ul></div><div class="event"><h4>client.minimized</h4><p class="desc">Emitted whenever a client is minimized. Equivalent to workspace.clientMinimized, but for a specific client. Use wherever possible instead of workspace.clientMinimzed to improve performance.</p><ul/></div><div class="event"><h4>client.maximizeSet</h4><p class="desc">Emitted when the client is maximized in a particular orientation. The orientation i.e. the rectangular direction in which the client was specified to occupy the entire available space is specified by the two parameters horizontally and vertically. If both are true, the client was maximized fully i.e. asked to occupy the entire workspace are available. Equivalent to workspace.clientMaximizeSet, but for a specific client. Use wherever possible instead of workspace.clientMaximizeSet to improve performance.</p><ul><li><strong>horizontally {boolean}</strong>: (true) if the client was maximized horizontally, (false) otherwise.</li><li><strong>vertically {boolean}</strong>: (true) if the client was maximized vertically, (false) otherwise.</li></ul></div><div class="event"><h4>client.gotFocus</h4><p class="desc">Emitted whenever the client is activated (or gets focus). Equivalent to workspace.clientActivated but for a specific client. Use wherever possible instead of workspace.clientActivated to improve performance.</p><ul/></div><div class="event"><h4>client.unminimized</h4><p class="desc">Emitted whenever the given client is unminimized. Equivalent of workspace.clientUnminimzed but for a specific client. Use wherever possible instead of workspace.clientUnminimized to improve performance.</p><ul/></div><div class="event"><h4>client.fullScreenSet</h4><p class="desc">Emitted whenever the client's fullscreen mode is toggled. fss_set specifies whether the client was set to or from fullscreen mode.</p><ul><li><strong>fss_set {boolean}</strong>: (true) if the client was set to full screen mode, (false) if the client was set from full screen mode.</li></ul></div></div><div id="methods_client" class="methods"><h3>Methods</h3><div class="method"><h4>client.caption
 
87
                [ret: string]
 
88
            </h4><ul><li>client.caption(
 
89
        
 
90
        )
 
91
    </li></ul><p class="desc">Returns the caption of the caption (or the title) of the window.</p><ul/></div><div class="method"><h4>client.close</h4><ul><li>client.close(
 
92
        
 
93
        )
 
94
    </li></ul><p class="desc">Closes the given client using killClient.</p><ul/></div><div class="method"><h4>client.move<sup>[variabl parameter styles]</sup></h4><ul><li>client.move(
 
95
        location {qpoint}, emitjs {boolean}
 
96
        )
 
97
    </li><li>client.move(
 
98
        x {integer}, x {integer}, emitjs {boolean}
 
99
        )
 
100
    </li></ul><p class="desc">Moves the client to the specified location keeping the height and width of the client same.</p><p class="footdocs">move(
 
101
        location {qpoint}, emitjs {boolean}
 
102
        )
 
103
    <ul><li><strong>location {qpoint}</strong>: The (x, y) point to where the top left corner of the client must be moved to keeping the current height and width same.</li><li><strong>emitjs {boolean}</strong>: EmitJS value (defaults to true).</li></ul></p><p class="footdocs">move(
 
104
        x {integer}, x {integer}, emitjs {boolean}
 
105
        )
 
106
    <ul><li><strong>x {integer}</strong>: The x co-ordinate value of the point to where the top left corner of the client must be moved to keeping the current height and width same.</li><li><strong>x {integer}</strong>: The y co-ordinate value of the point to where the top left corner of the client must be moved to keeping the current height and width same.</li><li><strong>emitjs {boolean}</strong>: EmitJS value (defaults to true).</li></ul></p></div><div class="method"><h4>client.resize<sup>[variabl parameter styles]</sup></h4><ul><li>client.resize(
 
107
        size {qsize}, emitJS {boolean}
 
108
        )
 
109
    </li><li>client.resize(
 
110
        w {integer}, h {integer}, emitJS {boolean}
 
111
        )
 
112
    </li></ul><p class="desc">Resizes the client to the specified size without changing its position.</p><p class="footdocs">resize(
 
113
        size {qsize}, emitJS {boolean}
 
114
        )
 
115
    <ul><li><strong>size {qsize}</strong>: The size to which the client is to be resized.</li><li><strong>emitJS {boolean}</strong>: EmitJS value (defaults to true).</li></ul></p><p class="footdocs">resize(
 
116
        w {integer}, h {integer}, emitJS {boolean}
 
117
        )
 
118
    <ul><li><strong>w {integer}</strong>: New width for the client.</li><li><strong>h {integer}</strong>: New height for the client.</li><li><strong>emitJS {boolean}</strong>: EmitJS value (defaults to true).</li></ul></p></div><div class="method"><h4>client.setGeometry<sup>[variabl parameter styles]</sup></h4><ul><li>client.setGeometry(
 
119
        geometry {qrect}, emitJS {boolean}
 
120
        )
 
121
    </li><li>client.setGeometry(
 
122
        x {integer}, y {integer}, w {integer}, h {integer}
 
123
        )
 
124
    </li></ul><p class="desc">Sets the geometry of the client i.e. sets is size and location according to the provided parameters.</p><p class="footdocs">setGeometry(
 
125
        geometry {qrect}, emitJS {boolean}
 
126
        )
 
127
    <ul><li><strong>geometry {qrect}</strong>: The new geometry which is to be set for the client.</li><li><strong>emitJS {boolean}</strong>: EmitJS value (defaults to true).</li></ul></p><p class="footdocs">setGeometry(
 
128
        x {integer}, y {integer}, w {integer}, h {integer}
 
129
        )
 
130
    <ul><li><strong>x {integer}</strong>: The x co-ordinate of the new geometry.</li><li><strong>y {integer}</strong>: The y co-ordinate of the new geometry.</li><li><strong>w {integer}</strong>: The width of the new geometry.</li><li><strong>h {integer}</strong>: The height of the new geometry.</li></ul></p></div><div class="method"><h4>client.getWindowInfo
 
131
                [ret: windowinfo]
 
132
            </h4><ul><li>client.getWindowInfo(
 
133
        
 
134
        )
 
135
    </li></ul><p class="desc">Returns a windowinfo object which can be used to get further information about the client. Wherever possible, directly use the client properties than calling for a windowinfo object. NOTE: The windowinfo object is a 'snapshot' object and hence the data provided by it is not modified when the properties of the client are changed.</p><ul/></div><div class="method"><h4>client.isTransient
 
136
                [ret: boolean]
 
137
            </h4><ul><li>client.isTransient(
 
138
        
 
139
        )
 
140
    </li></ul><p class="desc">Returns (true) is 'client' is transient, (false) otherwise.</p><ul/></div><div class="method"><h4>client.isTransientFor
 
141
                [ret: client]
 
142
            </h4><ul><li>client.isTransientFor(
 
143
        
 
144
        )
 
145
    </li></ul><p class="desc">If the given client is transient, returns it's parent client, otherwise returns an undefined scriptvalue.</p><ul/></div><div class="method"><h4>client.activate</h4><ul><li>client.activate(
 
146
        
 
147
        )
 
148
    </li></ul><p class="desc">&lt;strong&gt;Attempt&lt;/strong&gt; to activate (focus) the client. By attempt, it means that focus stealing prevention still is activated and the rules for activation are in place. Hence, the client actually may nor may not be activated.</p><ul/></div><div class="method"><h4>client.setCaption</h4><ul><li>client.setCaption(
 
149
        caption_string {string}
 
150
        )
 
151
    </li></ul><p class="desc">Sets the caption for the specified client to caption_string.</p><ul><li><strong>caption_string {string}</strong>: The caption to be set for the specified.</li></ul></div><div class="method"><h4>client.unminimize</h4><ul><li>client.unminimize(
 
152
        
 
153
        )
 
154
    </li></ul><p class="desc">Unminimizes (or restores) the given client.</p><ul/></div><div class="method"><h4>client.setFullScreen</h4><ul><li>client.setFullScreen(
 
155
         {fss_set}
 
156
        )
 
157
    </li></ul><p class="desc">Sets the client to or from full screen mode.</p><ul><li><strong> {fss_set}</strong>: If (true), then the client is set to full screen or else, it is unset from fullscreen mode. If no parameter is provided, it toggles the full screen state.</li></ul></div><div class="method"><h4>client.isShade
 
158
                [ret: boolean]
 
159
            </h4><ul><li>client.isShade(
 
160
        
 
161
        )
 
162
    </li></ul><p class="desc">Returns (true) if the client is shaded, (false) otherwise.</p><ul/></div><div class="method"><h4>client.isShadeable
 
163
                [ret: boolean]
 
164
            </h4><ul><li>client.isShadeable(
 
165
        
 
166
        )
 
167
    </li></ul><p class="desc">Returns (true) if the client is shadeable (can be shaded), (false) otherwise.</p><ul/></div><div class="method"><h4>client.isMinimized
 
168
                [ret: boolean]
 
169
            </h4><ul><li>client.isMinimized(
 
170
        
 
171
        )
 
172
    </li></ul><p class="desc">Returns (true) if the client is minimized, (false) otherwise.</p><ul/></div><div class="method"><h4>client.isMinimizable
 
173
                [ret: boolean]
 
174
            </h4><ul><li>client.isMinimizable(
 
175
        
 
176
        )
 
177
    </li></ul><p class="desc">Returns (true) if the client can be minimized, (false) otherwise.</p><ul/></div><div class="method"><h4>client.isMaximizable
 
178
                [ret: boolean]
 
179
            </h4><ul><li>client.isMaximizable(
 
180
        
 
181
        )
 
182
    </li></ul><p class="desc">Returns (true) if the client can be mazimized, (false) otherwise.</p><ul/></div><div class="method"><h4>client.isResizable
 
183
                [ret: boolean]
 
184
            </h4><ul><li>client.isResizable(
 
185
        
 
186
        )
 
187
    </li></ul><p class="desc">Returns (true) if the client can be resized (changable size), (false) otherwise.</p><ul/></div><div class="method"><h4>client.isMovable
 
188
                [ret: boolean]
 
189
            </h4><ul><li>client.isMovable(
 
190
        
 
191
        )
 
192
    </li></ul><p class="desc">Returns (true) if the client can be moved (non-fixed location), (false) otherwise.</p><ul/></div><div class="method"><h4>client.isMovableAcrossScreens
 
193
                [ret: boolean]
 
194
            </h4><ul><li>client.isMovableAcrossScreens(
 
195
        
 
196
        )
 
197
    </li></ul><p class="desc">Returns (true) if the client can be moved across screens (only valid in a multiple monitor setup), (false) otherwise.</p><ul/></div><div class="method"><h4>client.isCloseable
 
198
                [ret: boolean]
 
199
            </h4><ul><li>client.isCloseable(
 
200
        
 
201
        )
 
202
    </li></ul><p class="desc">Returns (true) if the client can be closed by user action (or any other action other than the system or the application itself), (false) otherwise.</p><ul/></div><div class="method"><h4>client.isFullScreen
 
203
                [ret: boolean]
 
204
            </h4><ul><li>client.isFullScreen(
 
205
        
 
206
        )
 
207
    </li></ul><p class="desc">Returns (true) if the client is in fullscreen mode, (false) otherwise.</p><ul/></div><div class="method"><h4>client.isFullScreenable
 
208
                [ret: boolean]
 
209
            </h4><ul><li>client.isFullScreenable(
 
210
        
 
211
        )
 
212
    </li></ul><p class="desc">Returns (true) if the client can be set to fullscreen mode, (false) otherwise.</p><ul/></div><div class="method"><h4>client.isNormal
 
213
                [ret: boolean]
 
214
            </h4><ul><li>client.isNormal(
 
215
        
 
216
        )
 
217
    </li></ul><p class="desc">Returns (true) if the window is 'normal', (false) otherwise. A normal window is a window which has a border, can be moved by the user, can be closed, etc.</p><ul/></div><div class="method"><h4>client.keepAbove
 
218
                [ret: boolean]
 
219
            </h4><ul><li>client.keepAbove(
 
220
        
 
221
        )
 
222
    </li></ul><p class="desc">Returns (true) if 'Keep Above Others' has been set on the client, (false) otherwise.</p><ul/></div><div class="method"><h4>client.keepBelow
 
223
                [ret: boolean]
 
224
            </h4><ul><li>client.keepBelow(
 
225
        
 
226
        )
 
227
    </li></ul><p class="desc">Returns (true) if 'Keep Below Others' has been set on the client, (false) otherwise.</p><ul/></div><div class="method"><h4>client.setKeepAbove</h4><ul><li>client.setKeepAbove(
 
228
        keepabove {boolean}
 
229
        )
 
230
    </li></ul><p class="desc">Sets the 'Keep Above others' parameter value or unsets it according to keepabove.</p><ul><li><strong>keepabove {boolean}</strong>: The 'Keep Above others' parameter to be applied to the client</li></ul></div><div class="method"><h4>client.setKeepBelow</h4><ul><li>client.setKeepBelow(
 
231
        keepbelow {}
 
232
        )
 
233
    </li></ul><p class="desc">Sets the 'Keep Below others' parameter value or unsets it according to keepbelow.</p><ul><li><strong>keepbelow {}</strong>: The 'Keep Below others' parameter to be applied to the client</li></ul></div><div class="method"><h4>client.clientGroup
 
234
                [ret: clientgroup]
 
235
            </h4><ul><li>client.clientGroup(
 
236
        
 
237
        )
 
238
    </li></ul><p class="desc">Returns the client group the client belongs to. If it belongs to no client, it returns an undefined script value.</p><ul/></div><div class="method"><h4>client.desktop
 
239
                [ret: integer]
 
240
            </h4><ul><li>client.desktop(
 
241
        
 
242
        )
 
243
    </li></ul><p class="desc">Returns the desktop number that the client is on. If it is on all desktops, it returns -1.</p><ul/></div></div><div id="props_client" class="props"><h3>Properties</h3></div></div>
 
244
 
 
245
 <div xmlns="" id="class_clientgroup" class="classes"><h2>clientgroup<sup>[<em>instantiable</em>]</sup></h2><div id="events_clientgroup" class="events"><h3>Events</h3></div><div id="methods_clientgroup" class="methods"><h3>Methods</h3><div class="method"><h4>clientgroup.ClientGroup</h4><ul><li>clientgroup.ClientGroup(
 
246
        seed_client {client}
 
247
        )
 
248
    </li></ul><p class="desc">Creates a new clientgroup object. A clientgroup in essence refers to a group of tabbed clients and an object refers to a specific group of such tabbed clients. It returns a clientgroup object which can be then manipulated using the various accessor functions.</p><ul><li><strong>seed_client {client}</strong>: The client to be added to the newly formed clientgroup. This is a mandatory argument for the creation of a new clientgroup object.</li></ul></div><div class="method"><h4>clientgroup.add</h4><ul><li>clientgroup.add(
 
249
        new_client {client}, beforeClient {integer}, becomeVisible {boolean}
 
250
        )
 
251
    </li></ul><p class="desc">Adds new_client to the clientgroup at the index specified by beforeClient and if becomeVisible is true, makes it visible.</p><ul><li><strong>new_client {client}</strong>: A client object to be added to the clientgroup.</li><li><strong>beforeClient {integer}</strong>: An index as to where the client is to be added to the clientgroup. It is an optional argument and if not specified, it will be added at the last position in the clientgroup.</li><li><strong>becomeVisible {boolean}</strong>: If (true), makes the added client visible.</li></ul></div><div class="method"><h4>clientgroup.remove<sup>[variabl parameter styles]</sup></h4><ul><li>clientgroup.remove(
 
252
        index {integer}, set_geom {qrect}
 
253
        )
 
254
    </li><li>clientgroup.remove(
 
255
        rem_client {client}, set_geom {qrect}
 
256
        )
 
257
    </li></ul><p class="desc">Removes the client from the clientgroup and then sets it's geometry according to set_geom. This parameter is optional.</p><p class="footdocs">remove(
 
258
        index {integer}, set_geom {qrect}
 
259
        )
 
260
    <ul><li><strong>index {integer}</strong>: The client index which is to be removed.</li><li><strong>set_geom {qrect}</strong>: The geometry to be set after removeal. This parameter is optional.</li></ul></p><p class="footdocs">remove(
 
261
        rem_client {client}, set_geom {qrect}
 
262
        )
 
263
    <ul><li><strong>rem_client {client}</strong>: The client which is to be removed.</li><li><strong>set_geom {qrect}</strong>: The geometry to be set after removal.</li></ul></p></div><div class="method"><h4>clientgroup.clients
 
264
                [ret: Array(client)]
 
265
            </h4><ul><li>clientgroup.clients(
 
266
        
 
267
        )
 
268
    </li></ul><p class="desc">Returns an array of all the member clients of the clientgroup.</p><ul/></div><div class="method"><h4>clientgroup.contains
 
269
                [ret: boolean]
 
270
            </h4><ul><li>clientgroup.contains(
 
271
        needle_client {client}
 
272
        )
 
273
    </li></ul><p class="desc">Returns (true) if needle_client is a member of the clientgroup, (false) otherwise.</p><ul><li><strong>needle_client {client}</strong>: The client to be searched for</li></ul></div><div class="method"><h4>clientgroup.indexOf
 
274
                [ret: integer]
 
275
            </h4><ul><li>clientgroup.indexOf(
 
276
        needle_client {client}
 
277
        )
 
278
    </li></ul><p class="desc">Searches for needle_client in the clientgroup and returns the position at which it exists. If needle_client is not found, then it returns -1.</p><ul><li><strong>needle_client {client}</strong>: The client whose index is to be found</li></ul></div><div class="method"><h4>clientgroup.move<sup>[variabl parameter styles]</sup></h4><ul><li>clientgroup.move(
 
279
        index_a {integer}, index_b {integer}
 
280
        )
 
281
    </li><li>clientgroup.move(
 
282
        move_client {integer}, index {integer}
 
283
        )
 
284
    </li><li>clientgroup.move(
 
285
        move_client {integer}, before_client {integer}
 
286
        )
 
287
    </li><li>clientgroup.move(
 
288
        index_a {integer}, before_client {integer}
 
289
        )
 
290
    </li></ul><p class="desc">Move a client within the group. Accepts move(client, client), move(index, index), move(index, client), move(client, index). All calls except move(client, client) are eventually mapped to move(index, index) using indexOf(client)</p><p class="footdocs">move(
 
291
        index_a {integer}, index_b {integer}
 
292
        )
 
293
    <ul><li><strong>index_a {integer}</strong>: The index of the client to be moved.</li><li><strong>index_b {integer}</strong>: The index of the position to move the client to.</li></ul></p><p class="footdocs">move(
 
294
        move_client {integer}, index {integer}
 
295
        )
 
296
    <ul><li><strong>move_client {integer}</strong>: The client to be moved.</li><li><strong>index {integer}</strong>: The index of the position to move the client to.</li></ul></p><p class="footdocs">move(
 
297
        move_client {integer}, before_client {integer}
 
298
        )
 
299
    <ul><li><strong>move_client {integer}</strong>: The client to be moved.</li><li><strong>before_client {integer}</strong>: The client before which the client is to moved.</li></ul></p><p class="footdocs">move(
 
300
        index_a {integer}, before_client {integer}
 
301
        )
 
302
    <ul><li><strong>index_a {integer}</strong>: The index of the client to be moved.</li><li><strong>before_client {integer}</strong>: The client before which the client is to moved.</li></ul></p></div><div class="method"><h4>clientgroup.removeAll</h4><ul><li>clientgroup.removeAll(
 
303
        
 
304
        )
 
305
    </li></ul><p class="desc">Removes all the clients from the clientgroup i.e. completely disassembles the clientgroup into its proponents.</p><ul/></div><div class="method"><h4>clientgroup.closeAll</h4><ul><li>clientgroup.closeAll(
 
306
        
 
307
        )
 
308
    </li></ul><p class="desc">Closes all the clients presents in the clientgroup.</p><ul/></div><div class="method"><h4>clientgroup.minSize
 
309
                [ret: qsize]
 
310
            </h4><ul><li>clientgroup.minSize(
 
311
        
 
312
        )
 
313
    </li></ul><p class="desc">Returns the minimum size acceptable for the clientgroup computed from the minimum sizes of all its present members.</p><ul/></div><div class="method"><h4>clientgroup.maxSize
 
314
                [ret: qsize]
 
315
            </h4><ul><li>clientgroup.maxSize(
 
316
        
 
317
        )
 
318
    </li></ul><p class="desc">Returns the maximum size acceptable for the clientgroup computed from the minimum sizes of all its present members.</p><ul/></div></div><div id="props_clientgroup" class="props"><h3>Properties</h3></div></div>
 
319
 
 
320
 <div xmlns="" id="class_windowinfo" class="classes"><h2>windowinfo<sup>[<em>floating</em>]</sup></h2><div id="events_windowinfo" class="events"><h3>Events</h3></div><div id="methods_windowinfo" class="methods"><h3>Methods</h3></div><div id="props_windowinfo" class="props"><h3>Properties</h3><div class="prop"><h4>windowinfo.isValid
 
321
                [ret: boolean]
 
322
            <sup>[GO]</sup></h4><p class="desc">Returns (true) if the client is valid, (false) otherwise.</p></div><div class="prop"><h4>windowinfo.visibleName
 
323
                [ret: string]
 
324
            <sup>[GO]</sup></h4><p class="desc">Returns the visible name of the client.</p></div><div class="prop"><h4>windowinfo.isMinimized
 
325
                [ret: boolean]
 
326
            <sup>[GO]</sup></h4><p class="desc">Returns (true) if client is minimized. Redundant with client.isMinimized. For client, the subclass property is called, not the toplevel one.</p></div><div class="prop"><h4>windowinfo.state
 
327
                [ret: integer]
 
328
            <sup>[GO]</sup></h4><p class="desc">Returns an integeral state for the client. Prefer other methods like isShaded, isFullScreenSet etc. over this.</p></div><div class="prop"><h4>windowinfo.windowRole
 
329
                [ret: string]
 
330
            <sup>[GO]</sup></h4><p class="desc">Returns the window role of the toplevel client.</p></div><div class="prop"><h4>windowinfo.windowClassClass
 
331
                [ret: string]
 
332
            <sup>[GO]</sup></h4><p class="desc">Returns the windowclass class of the client.</p></div><div class="prop"><h4>windowinfo.windowClassName
 
333
                [ret: string]
 
334
            <sup>[GO]</sup></h4><p class="desc">Returns the windowclass name of the client.</p></div></div></div>
 
335
 
 
336
 <div xmlns="" id="class_config" class="classes"><h2>config<sup>[<em>singleton</em>]</sup></h2><div id="events_config" class="events"><h3>Events</h3></div><div id="methods_config" class="methods"><h3>Methods</h3><div class="method"><h4>config.exists</h4><ul><li>config.exists(
 
337
        config_key {string}
 
338
        )
 
339
    </li></ul><p class="desc">Searches for config_key in the configuration array and returns (true) if a corresponding value exists, (false) otherwise.</p><ul><li><strong>config_key {string}</strong>: The configuration key to be seeked.</li></ul></div><div class="method"><h4>config.get<sup>[variabl parameter styles]</sup></h4><ul><li>config.get(
 
340
        
 
341
        )
 
342
    </li><li>config.get(
 
343
        key1, key2 ... keyN {string}
 
344
        )
 
345
    </li><li>config.get(
 
346
        key {string}
 
347
        )
 
348
    </li><li>config.get(
 
349
        keyArray {Array(string)}, showNonAssoc {boolean}
 
350
        )
 
351
    </li></ul><p class="desc">If called without parameters, returns an associative array in the format ["key" : "value"] of all available key value pairs. If only a single key is requested for (passing 1 string parameter), then the corresponding value is returned and NOT an array. If multiple keys are provided as multiple arguments, an associative array is returned. If multiple keys (or a single) key is provided as an Array, then an associative array is present (if showNonAssoc is false or it is not specified), otherwise returns an integer indexed array.</p><p class="footdocs">get(
 
352
        
 
353
        )
 
354
    <ul/></p><p class="footdocs">get(
 
355
        key1, key2 ... keyN {string}
 
356
        )
 
357
    <ul><li><strong>key1, key2 ... keyN {string}</strong>: A list of keys to search the values for.</li></ul></p><p class="footdocs">get(
 
358
        key {string}
 
359
        )
 
360
    <ul><li><strong>key {string}</strong>: The key to search the value for.</li></ul></p><p class="footdocs">get(
 
361
        keyArray {Array(string)}, showNonAssoc {boolean}
 
362
        )
 
363
    <ul><li><strong>keyArray {Array(string)}</strong>: An array of keys to search the corresponding values for.</li><li><strong>showNonAssoc {boolean}</strong>: If (true) causes the function to return an integer-indexed array, otherwise returns an associative array in the form ["key" : "value"]. This parameter is optional, defaults to false</li></ul></p></div></div><div id="props_config" class="props"><h3>Properties</h3><div class="prop"><h4>config.loaded
 
364
                [ret: boolean]
 
365
            <sup>[GO]</sup></h4><p class="desc">Returns (true) if a configuration file was found and loaded, (false) otherwise.</p></div></div></div>
 
366
</div>
 
367
  </body>
 
368
</html>