File: Accessibility_Application.idl

package info (click to toggle)
at-spi 1.22.1-1
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 7,428 kB
  • ctags: 5,725
  • sloc: ansic: 20,235; sh: 9,281; xml: 7,426; python: 2,021; makefile: 398
file content (124 lines) | stat: -rw-r--r-- 4,805 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
/* 
 * AT-SPI - Assistive Technology Service Provider Interface 
 * (Gnome Accessibility Project; http://developer.gnome.org/projects/gap)
 *
 * Copyright 2001-2004 Sun Microsystems Inc.
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Library General Public
 * License as published by the Free Software Foundation; either
 * version 2 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Library General Public License for more details.
 *
 * You should have received a copy of the GNU Library General Public
 * License along with this library; if not, write to the
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 * Boston, MA 02111-1307, USA.
 */

#ifndef __ACCESSIBILITY_APPLICATION_DEFINED__
#define __ACCESSIBILITY_APPLICATION_DEFINED__

#include <Accessibility_Accessible.idl>

module Accessibility {

  /** 
   * An interface identifying an object which is the root of the
   * user interface Accessible hierarchy associated with a running application.
   * Children of Application are typically, but not exclusively, 
   * top-level windows.
   * @note It is possible for an element deeper in an Accessibility stack to
   * implement Application, for instance in the case of "embedded applications"
   * which draw into toplevel windows associated with other applications
   * from the user's point of view.
   */
  interface Application : Accessible {

    /**
     * A string indicating the type of user interface toolkit
     * which is used by the application.
     * @note Ordinarily clients of ::Application should be
     * toolkit-agnostic, dependencies on this property should
     * be avoided where possible.
     **/
    readonly attribute string toolkitName;

    /**
     * A string indicating the version number of the application's
     * accessibility bridge implementation.
     **/
    readonly attribute string version;

    /**
     * The application instance's unique ID as assigned by the registry.
     **/
    attribute long id;

    /**
     * @param listener: an ::EventListener object which will receive the requested
     *            events from the application's toolkits via toolit 'bridges'
     * @param eventName: a UTF-8 string indicating the type of (toolkit-specific) event
     *            being requested.  Not all applications can generate toolkit events of
     *            a given type.
     *
     * Register with this application's toolkit for "toolkit-specific" event notifications.
     * @note
     *       For most event support, clients should use non-toolkit-specific events
     *       whenever possible, via ::Registry::registerGlobalEventListener - this method 
     *       is provided as a 'back door' when generic names do not exist for the events in 
     *       question.
     **/
    void registerToolkitEventListener (in EventListener listener, in string eventName);

    /**
     * registerObjectEventListener:
     * @param listener: an ::EventListener object which will receive the requested
     *            events
     * @param eventName: a UTF-8 string indicating the type of (toolkit-specific) event
     *            being requested.  
     * Register with this application toolkit for "Accessibility::Accessible" 
     * event notifications. 
     * @note: SUBJECT TO DEPRECATION.
     **/
    void registerObjectEventListener (in EventListener listener, in string eventName);

    /**
     * Request that the application temporarily stop sending events.
     * In most cases this should pause the application's main event loop.
     *
     * @returns: \c true if the request succeeded, \c false otherwise.
     *
     * @note: This method is not implemented in most toolkits, and therefore should be treated with caution.
     **/
    boolean       pause ();

    /**
     * Request that the application resume sending events.
     *
     * @returns: \c True if the request succeeded, \c False otherwise.
     **/
    boolean       resume ();

    /**
     * Gets the locale in which the application is currently operating.
     * For the current message locale, use \a lctype LOCALE_TYPE_MESSAGES.
     *
     * @param lctype The LocaleType for which the locale is queried.
     * @returns a string compliant with the POSIX standard for locale description.
     **/
    string       getLocale (in LOCALE_TYPE lctype);

    /**\cond (This comment tells doxygen not to document these) */
    void          unImplemented_ ();
    void          unImplemented2_ ();
    void          unImplemented3_ ();
    /**\endcond */
  };
};

#endif