<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <title>at-spi-idl: Accessibility::Registry Interface Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body> <!-- Generated by Doxygen 1.7.1 --> <div class="navigation" id="top"> <div class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="dirs.html"><span>Directories</span></a></li> </ul> </div> <div class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Data Fields</span></a></li> </ul> </div> <div class="navpath"> <ul> <li><a class="el" href="namespaceAccessibility.html">Accessibility</a> </li> <li><a class="el" href="interfaceAccessibility_1_1Registry.html">Accessibility::Registry</a> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> </div> <div class="headertitle"> <h1>Accessibility::Registry Interface Reference</h1> </div> </div> <div class="contents"> <!-- doxytag: class="Accessibility::Registry" --><!-- doxytag: inherits="Accessibility::EventListener" --> <p><code>import "<a class="el" href="Accessibility__Registry_8idl_source.html">Accessibility_Registry.idl</a>";</code></p> <div class="dynheader"> Inheritance diagram for Accessibility::Registry:</div> <div class="dyncontent"> <div class="center"> <img src="interfaceAccessibility_1_1Registry.png" usemap="#Accessibility::Registry_map" alt=""/> <map id="Accessibility::Registry_map" name="Accessibility::Registry_map"> <area href="interfaceAccessibility_1_1EventListener.html" alt="Accessibility::EventListener" shape="rect" coords="0,0,166,24"/> </map> </div> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">oneway void </td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceAccessibility_1_1Registry.html#ac8add906cf97d174a12d9c2ab721ee23">registerApplication</a> (in <a class="el" href="interfaceAccessibility_1_1Application.html">Application</a> app)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceAccessibility_1_1Registry.html#a85a9d7fd7e7661a0632c5a865f9c6002">deregisterApplication</a> (in <a class="el" href="interfaceAccessibility_1_1Application.html">Application</a> app)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceAccessibility_1_1Registry.html#adbb76f310f6cbeb67a56b5b5f54cc438">registerGlobalEventListener</a> (in <a class="el" href="interfaceAccessibility_1_1EventListener.html">EventListener</a> listener, in string eventName)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceAccessibility_1_1Registry.html#a02bbad1848d674d15a6e52ba6596a365">deregisterGlobalEventListenerAll</a> (in <a class="el" href="interfaceAccessibility_1_1EventListener.html">EventListener</a> listener)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceAccessibility_1_1Registry.html#a4024058fe15cb045140a0a2cf7e47ffc">deregisterGlobalEventListener</a> (in <a class="el" href="interfaceAccessibility_1_1EventListener.html">EventListener</a> listener, in string eventName)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">short </td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceAccessibility_1_1Registry.html#a46401dda126930957c64e9c2f2de8538">getDesktopCount</a> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceAccessibility_1_1Desktop.html">Desktop</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceAccessibility_1_1Registry.html#ad89d35ba8b3233799ce8fac1a2e12168">getDesktop</a> (in short n)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceAccessibility.html#a8573c6a569f0c63402163457cdebe0f4">DesktopSeq</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceAccessibility_1_1Registry.html#a36d3305ac9eb126653b308c0f9ce761c">getDesktopList</a> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceAccessibility_1_1DeviceEventController.html">DeviceEventController</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceAccessibility_1_1Registry.html#a26f214832aad2674719a695a62f8fdd4">getDeviceEventController</a> ()</td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <p>The <a class="el" href="interfaceAccessibility_1_1Registry.html">Registry</a> is a service through which applications providing accessibility services (servers) can rendezvous with consumers of those services (Assistive Technologies). The <a class="el" href="interfaceAccessibility_1_1Registry.html">Registry</a> is the first "port of call" for accessible applications and for assistive technologies wishing to query and interact with those applications.</p> <p>The <a class="el" href="interfaceAccessibility_1_1Registry.html">Registry</a> service provides four basic functions to Assistive Technology (AT) clients: </p> <ul> <li>it provides a list of the applications who have registered with the AT-SPI framework, thereby announcing their participation in the AT-SPI framework; </li> <li>it allows AT clients to register for notification of changes in application state (at-spi Events); </li> <li>it dispatches/relays said events from participating applications to the registered listeners; </li> <li>it gives access to system device events via the associated <a class="el" href="interfaceAccessibility_1_1DeviceEventController.html">DeviceEventController</a> interface.</li> </ul> <p>From the point of view of accessible applications (i.e. AT-SPI service producers), the <a class="el" href="interfaceAccessibility_1_1Registry.html">Registry</a> is primarily a registration and event delivery service. Applications normally only call the registerApplication and deregisterApplication <a class="el" href="interfaceAccessibility_1_1Registry.html">Registry</a> methods, and its inherited <a class="el" href="interfaceAccessibility_1_1EventListener.html#ac1c425dbcef7c5e5c26395210c83ad0f">EventListener::notifyEvent</a> method.</p> <dl class="note"><dt><b>Note:</b></dt><dd>Although all application events are dispatched via the <a class="el" href="interfaceAccessibility_1_1Registry.html">Registry</a>, other AT client calls are serviced directly by the applications, rather than being relayed via the <a class="el" href="interfaceAccessibility_1_1Registry.html">Registry</a>. The AT client obtains references to these application objects via the enumeration of <a class="el" href="interfaceAccessibility_1_1Desktop.html">Desktop</a> instances whose children are <a class="el" href="interfaceAccessibility_1_1Application.html">Application</a> instances (<a class="el" href="interfaceAccessibility_1_1Registry.html#a36d3305ac9eb126653b308c0f9ce761c">Registry::getDesktopList</a>) and via examination of the 'source' member of the <a class="el" href="structAccessibility_1_1Event.html">Event</a> structure.</dd></dl> <p>The <a class="el" href="interfaceAccessibility_1_1Registry.html">Registry</a> normally lives in its own process space; communication via <a class="el" href="interfaceAccessibility_1_1Registry.html">Registry</a> and both application services and AT clients takes place via IPC. A process space diagram illustrating the relationship between applications, <a class="el" href="interfaceAccessibility_1_1Registry.html">Registry</a>, and AT is shown below. </p> <div align="center"> <img src="http://developer.gnome.org/projects/gap/tech-docs/SPIBlockDiagram.png" alt="SPIBlockDiagram.png"/> </div> <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="interfaceAccessibility_1_1Desktop.html">Desktop</a>, <a class="el" href="interfaceAccessibility_1_1Application.html">Application</a>, <a class="el" href="structAccessibility_1_1Event.html">Event</a>, <a class="el" href="interfaceAccessibility_1_1EventListener.html">EventListener</a> </dd></dl> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="a85a9d7fd7e7661a0632c5a865f9c6002"></a><!-- doxytag: member="Accessibility::Registry::deregisterApplication" ref="a85a9d7fd7e7661a0632c5a865f9c6002" args="(in Application app)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void Accessibility::Registry::deregisterApplication </td> <td>(</td> <td class="paramtype">in <a class="el" href="interfaceAccessibility_1_1Application.html">Application</a> </td> <td class="paramname"> <em>app</em></td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>De-register an application previously registered with the broker. deregisterApplication: </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>app,:</em> </td><td>a reference to the <a class="el" href="interfaceAccessibility_1_1Application.html">Application</a> to be deregistered. </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a4024058fe15cb045140a0a2cf7e47ffc"></a><!-- doxytag: member="Accessibility::Registry::deregisterGlobalEventListener" ref="a4024058fe15cb045140a0a2cf7e47ffc" args="(in EventListener listener, in string eventName)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void Accessibility::Registry::deregisterGlobalEventListener </td> <td>(</td> <td class="paramtype">in <a class="el" href="interfaceAccessibility_1_1EventListener.html">EventListener</a> </td> <td class="paramname"> <em>listener</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">in string </td> <td class="paramname"> <em>eventName</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>deregisterGlobalEventListener: </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>listener,:</em> </td><td>the requesting <a class="el" href="interfaceAccessibility_1_1EventListener.html">EventListener</a> </td></tr> <tr><td valign="top"></td><td valign="top"><em>eventName,:</em> </td><td>a string indicating the type of events</td></tr> </table> </dd> </dl> <p>Request that a previously registered client stop receiving global notifications for events of a certain type. </p> </div> </div> <a class="anchor" id="a02bbad1848d674d15a6e52ba6596a365"></a><!-- doxytag: member="Accessibility::Registry::deregisterGlobalEventListenerAll" ref="a02bbad1848d674d15a6e52ba6596a365" args="(in EventListener listener)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void Accessibility::Registry::deregisterGlobalEventListenerAll </td> <td>(</td> <td class="paramtype">in <a class="el" href="interfaceAccessibility_1_1EventListener.html">EventListener</a> </td> <td class="paramname"> <em>listener</em></td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>deregisterGlobalEventListenerAll: </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>listener,:</em> </td><td>the requesting <a class="el" href="interfaceAccessibility_1_1EventListener.html">EventListener</a></td></tr> </table> </dd> </dl> <p>Request that a previously registered client stop receiving global notifications for all events for which it was registered. </p> </div> </div> <a class="anchor" id="ad89d35ba8b3233799ce8fac1a2e12168"></a><!-- doxytag: member="Accessibility::Registry::getDesktop" ref="ad89d35ba8b3233799ce8fac1a2e12168" args="(in short n)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="interfaceAccessibility_1_1Desktop.html">Desktop</a> Accessibility::Registry::getDesktop </td> <td>(</td> <td class="paramtype">in short </td> <td class="paramname"> <em>n</em></td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>getDesktop: <br/> : the index of the requested <a class="el" href="interfaceAccessibility_1_1Desktop.html">Desktop</a>.</p> <p>Get the nth accessible desktop.</p> <dl class="return"><dt><b>Returns:</b></dt><dd>a reference to the requested <a class="el" href="interfaceAccessibility_1_1Desktop.html">Desktop</a>. </dd></dl> </div> </div> <a class="anchor" id="a46401dda126930957c64e9c2f2de8538"></a><!-- doxytag: member="Accessibility::Registry::getDesktopCount" ref="a46401dda126930957c64e9c2f2de8538" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">short Accessibility::Registry::getDesktopCount </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>event types: "Window" "Desktop" "Window:Create" "Window:Destroy" "Window:Iconify" "Window:Restore" "Window:Fullscreen" "Window:Resize" "Desktop:Create" "Desktop:Destroy" "Desktop:Focus" "Desktop:Defocus" "Desktop:Reorder" "Focus" "GtkWidget:show" "GObject:notify:<propertyname>"</p> <p>( not sure we should allow these last 2 forms, since they are toolkit-specific, but they're powerful ) getDesktopCount:</p> <p>Get the current number of desktops. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>a short integer indicating the current number of Desktops. </dd></dl> </div> </div> <a class="anchor" id="a36d3305ac9eb126653b308c0f9ce761c"></a><!-- doxytag: member="Accessibility::Registry::getDesktopList" ref="a36d3305ac9eb126653b308c0f9ce761c" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="namespaceAccessibility.html#a8573c6a569f0c63402163457cdebe0f4">DesktopSeq</a> Accessibility::Registry::getDesktopList </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Get a list of accessible desktops.</p> <dl class="return"><dt><b>Returns:</b></dt><dd>: a sequence containing references to the Desktops. </dd></dl> </div> </div> <a class="anchor" id="a26f214832aad2674719a695a62f8fdd4"></a><!-- doxytag: member="Accessibility::Registry::getDeviceEventController" ref="a26f214832aad2674719a695a62f8fdd4" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="interfaceAccessibility_1_1DeviceEventController.html">DeviceEventController</a> Accessibility::Registry::getDeviceEventController </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Obtain an object which can be used to request device event notifications.</p> <dl class="return"><dt><b>Returns:</b></dt><dd>: an object implementing <a class="el" href="interfaceAccessibility_1_1DeviceEventController.html">DeviceEventController</a> </dd></dl> </div> </div> <a class="anchor" id="ac8add906cf97d174a12d9c2ab721ee23"></a><!-- doxytag: member="Accessibility::Registry::registerApplication" ref="ac8add906cf97d174a12d9c2ab721ee23" args="(in Application app)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">oneway void Accessibility::Registry::registerApplication </td> <td>(</td> <td class="paramtype">in <a class="el" href="interfaceAccessibility_1_1Application.html">Application</a> </td> <td class="paramname"> <em>app</em></td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Register a new application with the accessibility broker. </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>app,:</em> </td><td>a reference to the requesting <a class="el" href="interfaceAccessibility_1_1Application.html">Application</a> </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="adbb76f310f6cbeb67a56b5b5f54cc438"></a><!-- doxytag: member="Accessibility::Registry::registerGlobalEventListener" ref="adbb76f310f6cbeb67a56b5b5f54cc438" args="(in EventListener listener, in string eventName)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void Accessibility::Registry::registerGlobalEventListener </td> <td>(</td> <td class="paramtype">in <a class="el" href="interfaceAccessibility_1_1EventListener.html">EventListener</a> </td> <td class="paramname"> <em>listener</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">in string </td> <td class="paramname"> <em>eventName</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Register a client's interest in (all) application events of a certain type. </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>listener,:</em> </td><td>a reference to the requesting EventListener. </td></tr> <tr><td valign="top"></td><td valign="top"><em>eventName,:</em> </td><td>a string which indicates the type of events about which the client desires notification. </td></tr> </table> </dd> </dl> </div> </div> <hr/>The documentation for this interface was generated from the following file:<ul> <li>/home/liyuan/src/at-spi/idl/<a class="el" href="Accessibility__Registry_8idl_source.html">Accessibility_Registry.idl</a></li> </ul> </div> <hr class="footer"/><address class="footer"><small>Generated on Mon Sep 27 2010 16:50:43 for at-spi-idl by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address> </body> </html>