1
<refentry id="AtkObjectFactory">
3
<refentrytitle role="top_of_page" id="AtkObjectFactory.top_of_page">AtkObjectFactory</refentrytitle>
4
<manvolnum>3</manvolnum>
5
<refmiscinfo>ATK Library</refmiscinfo>
9
<refname>AtkObjectFactory</refname>
10
<refpurpose>The base object class for a factory used to create accessible objects for
11
objects of a specific GType.</refpurpose>
14
<refsynopsisdiv id="AtkObjectFactory.synopsis" role="synopsis">
15
<title role="synopsis.title">Synopsis</title>
18
<link linkend="AtkObjectFactory-struct">AtkObjectFactory</link>;
19
<link linkend="AtkObject">AtkObject</link>* <link linkend="atk-object-factory-create-accessible">atk_object_factory_create_accessible</link>
20
(<link linkend="AtkObjectFactory">AtkObjectFactory</link> *factory,
21
<link linkend="GObject">GObject</link> *obj);
22
<link linkend="GType">GType</link> <link linkend="atk-object-factory-get-accessible-type">atk_object_factory_get_accessible_type</link>
23
(<link linkend="AtkObjectFactory">AtkObjectFactory</link> *factory);
24
<link linkend="void">void</link> <link linkend="atk-object-factory-invalidate">atk_object_factory_invalidate</link> (<link linkend="AtkObjectFactory">AtkObjectFactory</link> *factory);
28
<refsect1 id="AtkObjectFactory.object-hierarchy" role="object_hierarchy">
29
<title role="object_hierarchy.title">Object Hierarchy</title>
31
<link linkend="GObject">GObject</link>
33
+----<link linkend="AtkNoOpObjectFactory">AtkNoOpObjectFactory</link>
44
<refsect1 id="AtkObjectFactory.description" role="desc">
45
<title role="desc.title">Description</title>
47
This class is the base object class for a factory used to create an
48
accessible object for a specific GType. The function
49
<link linkend="atk-registry-set-factory-type"><function>atk_registry_set_factory_type()</function></link> is normally called to store
50
in the registry the factory type to be used to create an accessible of a
55
<refsect1 id="AtkObjectFactory.details" role="details">
56
<title role="details.title">Details</title>
57
<refsect2 id="AtkObjectFactory-struct" role="struct">
58
<title>AtkObjectFactory</title>
59
<indexterm zone="AtkObjectFactory-struct"><primary sortas="AtkObjectFactory">AtkObjectFactory</primary></indexterm><programlisting>typedef struct _AtkObjectFactory AtkObjectFactory;</programlisting>
61
The AtkObjectFactory structure should not be accessed directly.
63
<refsect2 id="atk-object-factory-create-accessible" role="function">
64
<title>atk_object_factory_create_accessible ()</title>
65
<indexterm zone="atk-object-factory-create-accessible"><primary sortas="atk_object_factory_create_accessible">atk_object_factory_create_accessible</primary></indexterm><programlisting><link linkend="AtkObject">AtkObject</link>* atk_object_factory_create_accessible
66
(<link linkend="AtkObjectFactory">AtkObjectFactory</link> *factory,
67
<link linkend="GObject">GObject</link> *obj);</programlisting>
69
Provides an <link linkend="AtkObject"><type>AtkObject</type></link> that implements an accessibility interface
70
on behalf of <parameter>obj</parameter></para>
72
</para><variablelist role="params">
73
<varlistentry><term><parameter>factory</parameter> :</term>
74
<listitem><simpara> The <link linkend="AtkObjectFactory"><type>AtkObjectFactory</type></link> associated with <parameter>obj</parameter>'s
76
</simpara></listitem></varlistentry>
77
<varlistentry><term><parameter>obj</parameter> :</term>
78
<listitem><simpara> a <link linkend="GObject"><type>GObject</type></link>
79
</simpara></listitem></varlistentry>
80
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> an <link linkend="AtkObject"><type>AtkObject</type></link> that implements an accessibility interface
81
on behalf of <parameter>obj</parameter>
82
</simpara></listitem></varlistentry>
83
</variablelist></refsect2>
84
<refsect2 id="atk-object-factory-get-accessible-type" role="function">
85
<title>atk_object_factory_get_accessible_type ()</title>
86
<indexterm zone="atk-object-factory-get-accessible-type"><primary sortas="atk_object_factory_get_accessible_type">atk_object_factory_get_accessible_type</primary></indexterm><programlisting><link linkend="GType">GType</link> atk_object_factory_get_accessible_type
87
(<link linkend="AtkObjectFactory">AtkObjectFactory</link> *factory);</programlisting>
89
Gets the GType of the accessible which is created by the factory.</para>
91
</para><variablelist role="params">
92
<varlistentry><term><parameter>factory</parameter> :</term>
93
<listitem><simpara> an <link linkend="AtkObjectFactory"><type>AtkObjectFactory</type></link>
94
</simpara></listitem></varlistentry>
95
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the type of the accessible which is created by the <parameter>factory</parameter>.
96
The value G_TYPE_INVALID is returned if no type if found.
97
</simpara></listitem></varlistentry>
98
</variablelist></refsect2>
99
<refsect2 id="atk-object-factory-invalidate" role="function">
100
<title>atk_object_factory_invalidate ()</title>
101
<indexterm zone="atk-object-factory-invalidate"><primary sortas="atk_object_factory_invalidate">atk_object_factory_invalidate</primary></indexterm><programlisting><link linkend="void">void</link> atk_object_factory_invalidate (<link linkend="AtkObjectFactory">AtkObjectFactory</link> *factory);</programlisting>
103
Inform <parameter>factory</parameter> that it is no longer being used to create
104
accessibles. When called, <parameter>factory</parameter> may need to inform
105
<link linkend="AtkObjects"><type>AtkObjects</type></link> which it has created that they need to be re-instantiated.
106
Note: primarily used for runtime replacement of <link linkend="AtkObjectFactorys"><type>AtkObjectFactorys</type></link>
107
in object registries.</para>
109
</para><variablelist role="params">
110
<varlistentry><term><parameter>factory</parameter> :</term>
111
<listitem><simpara> an <link linkend="AtkObjectFactory"><type>AtkObjectFactory</type></link> to invalidate
112
</simpara></listitem></varlistentry>
113
</variablelist></refsect2>
119
<refsect1 id="AtkObjectFactory.see-also">
120
<title>See Also</title>