~elementary-os/elementaryos/os-patch-at-spi2-core-xenial

« back to all changes in this revision

Viewing changes to atspi/atspi-event-listener.h

  • Committer: RabbitBot
  • Date: 2016-11-16 09:38:52 UTC
  • Revision ID: rabbitbot@elementary.io-20161116093852-xn6hcgpg5y25xooo
Initial import, version 2.18.3-4ubuntu1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * AT-SPI - Assistive Technology Service Provider Interface
 
3
 * (Gnome Accessibility Project; http://developer.gnome.org/projects/gap)
 
4
 *
 
5
 * Copyright 2002 Ximian, Inc.
 
6
 *           2002 Sun Microsystems Inc.
 
7
 * Copyright 2010, 2011 Novell, Inc.
 
8
 *           
 
9
 *
 
10
 * This library is free software; you can redistribute it and/or
 
11
 * modify it under the terms of the GNU Library General Public
 
12
 * License as published by the Free Software Foundation; either
 
13
 * version 2 of the License, or (at your option) any later version.
 
14
 *
 
15
 * This library is distributed in the hope that it will be useful,
 
16
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 
17
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 
18
 * Library General Public License for more details.
 
19
 *
 
20
 * You should have received a copy of the GNU Library General Public
 
21
 * License along with this library; if not, write to the
 
22
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 
23
 * Boston, MA 02111-1307, USA.
 
24
 */
 
25
 
 
26
#ifndef _ATSPI_EVENT_LISTENER_H_
 
27
#define _ATSPI_EVENT_LISTENER_H_
 
28
 
 
29
#include "glib-object.h"
 
30
 
 
31
#include "atspi-types.h"
 
32
 
 
33
G_BEGIN_DECLS
 
34
 
 
35
GType atspi_event_get_type (void);
 
36
 
 
37
/**
 
38
 * AtspiEventListenerCB:
 
39
 * @event: (transfer full): The event for which notification is sent.
 
40
 * @user_data: User data which is passed to the callback each time a notification takes place.
 
41
 *
 
42
 * A function prototype for callbacks via which clients are notified of AT-SPI events.
 
43
 * 
 
44
 **/
 
45
typedef void       (*AtspiEventListenerCB)     (AtspiEvent     *event,
 
46
                                                     void                      *user_data);
 
47
 
 
48
/**
 
49
 * AtspiEventListenerSimpleCB:
 
50
 * @event: (transfer full): The event for which notification is sent.
 
51
 *
 
52
 * Like #AtspiEventlistenerCB, but with no user_data.
 
53
 * 
 
54
 **/
 
55
typedef void       (*AtspiEventListenerSimpleCB)     (const AtspiEvent     *event);
 
56
 
 
57
#define ATSPI_TYPE_EVENT_LISTENER                        (atspi_event_listener_get_type ())
 
58
#define ATSPI_EVENT_LISTENER(obj)                        (G_TYPE_CHECK_INSTANCE_CAST ((obj), ATSPI_TYPE_EVENT_LISTENER, AtspiEventListener))
 
59
#define ATSPI_EVENT_LISTENER_CLASS(klass)                (G_TYPE_CHECK_CLASS_CAST ((klass), ATSPI_TYPE_EVENT_LISTENER, AtspiEventListenerClass))
 
60
#define ATSPI_IS_EVENT_LISTENER(obj)                     (G_TYPE_CHECK_INSTANCE_TYPE ((obj), ATSPI_TYPE_EVENT_LISTENER))
 
61
#define ATSPI_IS_EVENT_LISTENER_CLASS(klass)             (G_TYPE_CHECK_CLASS_TYPE ((klass), ATSPI_TYPE_EVENT_LISTENER))
 
62
#define ATSPI_EVENT_LISTENER_GET_CLASS(obj)              (G_TYPE_INSTANCE_GET_CLASS ((obj), ATSPI_TYPE_EVENT_LISTENER, AtspiEventListenerClass))
 
63
 
 
64
typedef struct _AtspiEventListener AtspiEventListener;
 
65
struct _AtspiEventListener
 
66
{
 
67
  GObject parent;
 
68
  AtspiEventListenerCB callback;
 
69
  void *user_data;
 
70
  GDestroyNotify cb_destroyed;
 
71
};
 
72
 
 
73
typedef struct _AtspiEventListenerClass AtspiEventListenerClass;
 
74
struct _AtspiEventListenerClass
 
75
{
 
76
  GObjectClass parent_class;
 
77
};
 
78
 
 
79
GType atspi_event_listener_get_type (void);
 
80
 
 
81
AtspiEventListener *
 
82
atspi_event_listener_new (AtspiEventListenerCB callback,
 
83
                                 gpointer user_data,
 
84
                                 GDestroyNotify callback_destroyed);
 
85
 
 
86
AtspiEventListener *
 
87
atspi_event_listener_new_simple (AtspiEventListenerSimpleCB callback,
 
88
                                 GDestroyNotify callback_destroyed);
 
89
 
 
90
gboolean
 
91
atspi_event_listener_register (AtspiEventListener *listener,
 
92
                                 const gchar              *event_type,
 
93
                                 GError **error);
 
94
 
 
95
gboolean
 
96
atspi_event_listener_register_full (AtspiEventListener *listener,
 
97
                                      const gchar              *event_type,
 
98
                                      GArray *properties,
 
99
                                      GError **error);
 
100
 
 
101
gboolean
 
102
atspi_event_listener_register_from_callback (AtspiEventListenerCB callback,
 
103
                                             void *user_data,
 
104
                                             GDestroyNotify callback_destroyed,
 
105
                                             const gchar              *event_type,
 
106
                                             GError **error);
 
107
 
 
108
gboolean
 
109
atspi_event_listener_register_from_callback_full (AtspiEventListenerCB callback,
 
110
                                                  void *user_data,
 
111
                                                  GDestroyNotify callback_destroyed,
 
112
                                                  const gchar              *event_type,
 
113
                                                  GArray *properties,
 
114
                                                  GError **error);
 
115
 
 
116
gboolean
 
117
atspi_event_listener_register_no_data (AtspiEventListenerSimpleCB callback,
 
118
                                 GDestroyNotify callback_destroyed,
 
119
                                 const gchar              *event_type,
 
120
                                 GError **error);
 
121
 
 
122
gboolean
 
123
atspi_event_listener_deregister (AtspiEventListener *listener,
 
124
                                 const gchar              *event_type,
 
125
                                 GError **error);
 
126
 
 
127
gboolean
 
128
atspi_event_listener_deregister_from_callback (AtspiEventListenerCB callback,
 
129
                                               void *user_data,
 
130
                                               const gchar              *event_type,
 
131
                                               GError **error);
 
132
 
 
133
gboolean
 
134
atspi_event_listener_deregister_no_data (AtspiEventListenerSimpleCB callback,
 
135
                                   const gchar              *event_type,
 
136
                                   GError **error);
 
137
 
 
138
G_END_DECLS
 
139
 
 
140
#endif  /* _ATSPI_EVENT_LISTENER_H_ */