01deff340600523d3936a6f31be809df4e8b6531
[platform/core/uifw/at-spi2-atk.git] / idl / Application.idl
1 /* 
2  * AT-SPI - Assistive Technology Service Provider Interface 
3  * (Gnome Accessibility Project; http://developer.gnome.org/projects/gap)
4  *
5  * Copyright 2001 Sun Microsystems Inc.
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Library General Public
9  * License as published by the Free Software Foundation; either
10  * version 2 of the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15  * Library General Public License for more details.
16  *
17  * You should have received a copy of the GNU Library General Public
18  * License along with this library; if not, write to the
19  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20  * Boston, MA 02111-1307, USA.
21  */
22
23 #ifndef __ACCESSIBILITY_APPLICATION_DEFINED__
24 #define __ACCESSIBILITY_APPLICATION_DEFINED__
25
26 #include <Bonobo_Unknown.idl>
27 #include <Accessible.idl>
28
29 module Accessibility {
30   interface Application : Accessible {
31
32     /**
33      * Get a string indicating the type of user interface toolkit
34      * which is used by the application.
35      * Ordinarily clients of @AccessibleApplication should be
36      * toolkit-agnostic, dependencies on this method probably
37      * should be reconsidered!
38      **/
39     readonly attribute string toolkitName;
40
41     /**
42      * Get a string indicating the version number of the application's
43      * accessibility bridge implementation.
44      **/
45     readonly attribute string version;
46
47     /**
48      * Get the application instance's unique ID as assigned by the registry.
49      *
50      **/
51     attribute long id;
52
53     /**
54      * Register with this application's toolkit for "toolkit-specific" event notifications.
55      *
56      **/
57     void registerToolkitEventListener (in EventListener listener, in string eventName);
58
59     /**
60      * Register with this application's toolkit for "Accessibility::Accessible" 
61      * event notifications.
62      *
63      **/
64     void registerObjectEventListener (in EventListener listener, in string eventName);
65
66     /**
67      * pause:
68      * Returns: %true if the request succeeded, %false otherwise.
69      *
70      * Request that the application temporarily stop sending events.
71      * In most cases this should pause the application's main event loop.
72      *
73      **/
74     boolean       pause ();
75
76     /**
77      * resume:
78      * Returns: %true if the request succeeded, %false otherwise.
79      *
80      * Request that the application resume sending events.
81      *
82      **/
83     boolean       resume ();
84   };
85 };
86
87 #endif