1
<?xml version="1.0" encoding="UTF-8" ?>
2
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
3
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
4
<refentry id="WnckClassGroup">
6
<refentrytitle role="top_of_page" id="WnckClassGroup.top_of_page">WnckClassGroup</refentrytitle>
7
<manvolnum>3</manvolnum>
8
<refmiscinfo>LIBWNCK Library</refmiscinfo>
11
<refname>WnckClassGroup</refname>
12
<refpurpose>an object representing a group of windows of the same
15
<refsect1 id="WnckClassGroup.stability-level">
16
<title>Stability Level</title>
17
Unstable, unless otherwise indicated
20
<refsynopsisdiv id="WnckClassGroup.synopsis" role="synopsis">
21
<title role="synopsis.title">Synopsis</title>
24
#include <libwnck/libwnck.h>
26
<link linkend="WnckClassGroup-struct">WnckClassGroup</link>;
27
<link linkend="WnckClassGroup">WnckClassGroup</link> * <link linkend="wnck-class-group-get">wnck_class_group_get</link> (const <link linkend="char">char</link> *res_class);
28
const <link linkend="char">char</link> * <link linkend="wnck-class-group-get-res-class">wnck_class_group_get_res_class</link> (<link linkend="WnckClassGroup">WnckClassGroup</link> *class_group);
29
const <link linkend="char">char</link> * <link linkend="wnck-class-group-get-name">wnck_class_group_get_name</link> (<link linkend="WnckClassGroup">WnckClassGroup</link> *class_group);
30
<link linkend="GdkPixbuf">GdkPixbuf</link> * <link linkend="wnck-class-group-get-icon">wnck_class_group_get_icon</link> (<link linkend="WnckClassGroup">WnckClassGroup</link> *class_group);
31
<link linkend="GdkPixbuf">GdkPixbuf</link> * <link linkend="wnck-class-group-get-mini-icon">wnck_class_group_get_mini_icon</link> (<link linkend="WnckClassGroup">WnckClassGroup</link> *class_group);
32
<link linkend="GList">GList</link> * <link linkend="wnck-class-group-get-windows">wnck_class_group_get_windows</link> (<link linkend="WnckClassGroup">WnckClassGroup</link> *class_group);
35
<refsect1 id="WnckClassGroup.object-hierarchy" role="object_hierarchy">
36
<title role="object_hierarchy.title">Object Hierarchy</title>
38
<link linkend="GObject">GObject</link>
42
<refsect1 id="WnckClassGroup.signals" role="signal_proto">
43
<title role="signal_proto.title">Signals</title>
45
"<link linkend="WnckClassGroup-icon-changed">icon-changed</link>" : Run Last
46
"<link linkend="WnckClassGroup-name-changed">name-changed</link>" : Run Last
50
<refsect1 id="WnckClassGroup.description" role="desc">
51
<title role="desc.title">Description</title>
53
The <link linkend="WnckClassGroup"><type>WnckClassGroup</type></link> is a group of <link linkend="WnckWindow"><type>WnckWindow</type></link> that are all in the same
54
class. It can be used to represent windows by classes, group windows by
55
classes or to manipulate all windows of a particular class.
58
The class of a window is defined by the WM_CLASS property of this window.
59
More information about the WM_CLASS property is available in the <ulink
60
url="http://tronche.com/gui/x/icccm/sec-4.html#s-4.1.2.5">WM_CLASS Property</ulink>
61
section (section 4.1.2.5) of the <ulink
62
url="http://tronche.com/gui/x/icccm/">ICCCM</ulink>.
65
The <link linkend="WnckClassGroup"><type>WnckClassGroup</type></link> objects are always owned by libwnck and must not be
66
referenced or unreferenced.</para>
70
<refsect1 id="WnckClassGroup.details" role="details">
71
<title role="details.title">Details</title>
72
<refsect2 id="WnckClassGroup-struct" role="struct">
73
<title>WnckClassGroup</title>
74
<indexterm zone="WnckClassGroup-struct"><primary>WnckClassGroup</primary></indexterm>
75
<programlisting>typedef struct _WnckClassGroup WnckClassGroup;</programlisting>
77
The <link linkend="WnckClassGroup"><type>WnckClassGroup</type></link> struct contains only private fields and should not be
78
directly accessed.</para>
81
<refsect2 id="wnck-class-group-get" role="function" condition="since:2.2">
82
<title>wnck_class_group_get ()</title>
83
<indexterm zone="wnck-class-group-get" role="2.2"><primary>wnck_class_group_get</primary></indexterm>
84
<programlisting><link linkend="WnckClassGroup">WnckClassGroup</link> * wnck_class_group_get (const <link linkend="char">char</link> *res_class);</programlisting>
86
Gets the <link linkend="WnckClassGroup"><type>WnckClassGroup</type></link> corresponding to <parameter>res_class</parameter>.</para>
88
</para><variablelist role="params">
89
<varlistentry><term><parameter>res_class</parameter> :</term>
90
<listitem><simpara> name of the sought resource class.
91
</simpara></listitem></varlistentry>
92
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the <link linkend="WnckClassGroup"><type>WnckClassGroup</type></link> corresponding to <parameter>res_class</parameter>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> if
93
there is no <link linkend="WnckClassGroup"><type>WnckClassGroup</type></link> with the specified <parameter>res_class</parameter>. The returned
94
<link linkend="WnckClassGroup"><type>WnckClassGroup</type></link> is owned by libwnck and must not be referenced or
97
</simpara></listitem></varlistentry>
98
</variablelist><para role="since">Since 2.2</para></refsect2>
99
<refsect2 id="wnck-class-group-get-res-class" role="function" condition="since:2.2">
100
<title>wnck_class_group_get_res_class ()</title>
101
<indexterm zone="wnck-class-group-get-res-class" role="2.2"><primary>wnck_class_group_get_res_class</primary></indexterm>
102
<programlisting>const <link linkend="char">char</link> * wnck_class_group_get_res_class (<link linkend="WnckClassGroup">WnckClassGroup</link> *class_group);</programlisting>
104
Gets the resource class name for <parameter>class_group</parameter>.</para>
106
</para><variablelist role="params">
107
<varlistentry><term><parameter>class_group</parameter> :</term>
108
<listitem><simpara> a <link linkend="WnckClassGroup."><type>WnckClassGroup.</type></link>
109
</simpara></listitem></varlistentry>
110
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the resource class name of <parameter>class_group</parameter>, or an
111
empty string if the group has no resource class name.
113
</simpara></listitem></varlistentry>
114
</variablelist><para role="since">Since 2.2</para></refsect2>
115
<refsect2 id="wnck-class-group-get-name" role="function" condition="since:2.2">
116
<title>wnck_class_group_get_name ()</title>
117
<indexterm zone="wnck-class-group-get-name" role="2.2"><primary>wnck_class_group_get_name</primary></indexterm>
118
<programlisting>const <link linkend="char">char</link> * wnck_class_group_get_name (<link linkend="WnckClassGroup">WnckClassGroup</link> *class_group);</programlisting>
120
Gets an human-readable name for <parameter>class_group</parameter>. Since there is no way to
121
properly find this name, a suboptimal heuristic is used to find it. The name
122
is the name of all <link linkend="WnckApplication"><type>WnckApplication</type></link> for each <link linkend="WnckWindow"><type>WnckWindow</type></link> in <parameter>class_group</parameter> if
123
they all have the same name. If all <link linkend="WnckApplication"><type>WnckApplication</type></link> don't have the same
124
name, the name is the name of all <link linkend="WnckWindow"><type>WnckWindow</type></link> in <parameter>class_group</parameter> if they all
125
have the same name. If all <link linkend="WnckWindow"><type>WnckWindow</type></link> don't have the same name, the
126
resource class name is used.</para>
128
</para><variablelist role="params">
129
<varlistentry><term><parameter>class_group</parameter> :</term>
130
<listitem><simpara> a <link linkend="WnckClassGroup."><type>WnckClassGroup.</type></link>
131
</simpara></listitem></varlistentry>
132
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> an human-readable name for <parameter>class_group</parameter>.
134
</simpara></listitem></varlistentry>
135
</variablelist><para role="since">Since 2.2</para></refsect2>
136
<refsect2 id="wnck-class-group-get-icon" role="function" condition="since:2.2">
137
<title>wnck_class_group_get_icon ()</title>
138
<indexterm zone="wnck-class-group-get-icon" role="2.2"><primary>wnck_class_group_get_icon</primary></indexterm>
139
<programlisting><link linkend="GdkPixbuf">GdkPixbuf</link> * wnck_class_group_get_icon (<link linkend="WnckClassGroup">WnckClassGroup</link> *class_group);</programlisting>
141
Gets the icon to be used for <parameter>class_group</parameter>. Since there is no way to
142
properly find the icon, a suboptimal heuristic is used to find it. The icon
143
is the first icon found by looking at all the <link linkend="WnckApplication"><type>WnckApplication</type></link> for each
144
<link linkend="WnckWindow"><type>WnckWindow</type></link> in <parameter>class_group</parameter>, then at all the <link linkend="WnckWindow"><type>WnckWindow</type></link> in <parameter>class_group</parameter>. If
145
no icon was found, a fallback icon is used.</para>
147
</para><variablelist role="params">
148
<varlistentry><term><parameter>class_group</parameter> :</term>
149
<listitem><simpara> a <link linkend="WnckClassGroup."><type>WnckClassGroup.</type></link>
150
</simpara></listitem></varlistentry>
151
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the icon for <parameter>class_group</parameter>. The caller should reference the
152
returned <classname>GdkPixbuf</classname> if it needs to keep the icon
155
</simpara></listitem></varlistentry>
156
</variablelist><para role="since">Since 2.2</para></refsect2>
157
<refsect2 id="wnck-class-group-get-mini-icon" role="function" condition="since:2.2">
158
<title>wnck_class_group_get_mini_icon ()</title>
159
<indexterm zone="wnck-class-group-get-mini-icon" role="2.2"><primary>wnck_class_group_get_mini_icon</primary></indexterm>
160
<programlisting><link linkend="GdkPixbuf">GdkPixbuf</link> * wnck_class_group_get_mini_icon (<link linkend="WnckClassGroup">WnckClassGroup</link> *class_group);</programlisting>
162
Gets the mini-icon to be used for <parameter>class_group</parameter>. Since there is no way to
163
properly find the mini-icon, the same suboptimal heuristic as the one for
164
<link linkend="wnck-class-group-get-icon"><function>wnck_class_group_get_icon()</function></link> is used to find it.</para>
166
</para><variablelist role="params">
167
<varlistentry><term><parameter>class_group</parameter> :</term>
168
<listitem><simpara> a <link linkend="WnckClassGroup."><type>WnckClassGroup.</type></link>
169
</simpara></listitem></varlistentry>
170
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the mini-icon for <parameter>class_group</parameter>. The caller should reference
171
the returned <classname>GdkPixbuf</classname> if it needs to keep the
174
</simpara></listitem></varlistentry>
175
</variablelist><para role="since">Since 2.2</para></refsect2>
176
<refsect2 id="wnck-class-group-get-windows" role="function" condition="since:2.2">
177
<title>wnck_class_group_get_windows ()</title>
178
<indexterm zone="wnck-class-group-get-windows" role="2.2"><primary>wnck_class_group_get_windows</primary></indexterm>
179
<programlisting><link linkend="GList">GList</link> * wnck_class_group_get_windows (<link linkend="WnckClassGroup">WnckClassGroup</link> *class_group);</programlisting>
181
Gets the list of <link linkend="WnckWindow"><type>WnckWindow</type></link> that are grouped in <parameter>class_group</parameter>.</para>
183
</para><variablelist role="params">
184
<varlistentry><term><parameter>class_group</parameter> :</term>
185
<listitem><simpara> a <link linkend="WnckClassGroup."><type>WnckClassGroup.</type></link>
186
</simpara></listitem></varlistentry>
187
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the list of <link linkend="WnckWindow"><type>WnckWindow</type></link> grouped in <parameter>class_group</parameter>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> if
188
the group contains no window. The list should not be modified nor freed, as
189
it is owned by <parameter>class_group</parameter>.
191
</simpara></listitem></varlistentry>
192
</variablelist><para role="since">Since 2.2</para></refsect2>
195
<refsect1 id="WnckClassGroup.signal-details" role="signals">
196
<title role="signals.title">Signal Details</title>
197
<refsect2 id="WnckClassGroup-icon-changed" role="signal"><title>The <literal>"icon-changed"</literal> signal</title>
198
<indexterm zone="WnckClassGroup-icon-changed"><primary>WnckClassGroup::icon-changed</primary></indexterm>
199
<programlisting><link linkend="void">void</link> user_function (<link linkend="WnckClassGroup">WnckClassGroup</link> *class_group,
200
<link linkend="gpointer">gpointer</link> user_data) : Run Last</programlisting>
202
Emitted when the icon of <parameter>class_group</parameter> changes.</para>
204
</para><variablelist role="params">
205
<varlistentry><term><parameter>class_group</parameter> :</term>
206
<listitem><simpara> the <link linkend="WnckClassGroup"><type>WnckClassGroup</type></link> which emitted the signal.
207
</simpara></listitem></varlistentry>
208
<varlistentry><term><parameter>user_data</parameter> :</term>
209
<listitem><simpara>user data set when the signal handler was connected.</simpara></listitem></varlistentry>
210
</variablelist></refsect2><refsect2 id="WnckClassGroup-name-changed" role="signal"><title>The <literal>"name-changed"</literal> signal</title>
211
<indexterm zone="WnckClassGroup-name-changed"><primary>WnckClassGroup::name-changed</primary></indexterm>
212
<programlisting><link linkend="void">void</link> user_function (<link linkend="WnckClassGroup">WnckClassGroup</link> *class_group,
213
<link linkend="gpointer">gpointer</link> user_data) : Run Last</programlisting>
215
Emitted when the name of <parameter>class_group</parameter> changes.</para>
217
</para><variablelist role="params">
218
<varlistentry><term><parameter>class_group</parameter> :</term>
219
<listitem><simpara> the <link linkend="WnckClassGroup"><type>WnckClassGroup</type></link> which emitted the signal.
220
</simpara></listitem></varlistentry>
221
<varlistentry><term><parameter>user_data</parameter> :</term>
222
<listitem><simpara>user data set when the signal handler was connected.</simpara></listitem></varlistentry>
223
</variablelist></refsect2>
225
<refsect1 id="WnckClassGroup.see-also">
226
<title>See Also</title>
227
<link linkend="wnck-window-get-class-group"><function>wnck_window_get_class_group()</function></link>