2 * AT-SPI - Assistive Technology Service Provider Interface
3 * (Gnome Accessibility Project; https://wiki.gnome.org/Accessibility)
5 * Copyright (c) 2015 Samsung Electronics Co., Ltd.
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
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 * Lesser General Public License for more details.
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this library; if not, write to the
19 * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20 * Boston, MA 02110-1301, USA.
23 #ifndef MY_ATK_ACTION_H
24 #define MY_ATK_ACTION_H
27 #include <glib-object.h>
30 #include "my-atk-object.h"
32 #define MY_TYPE_ATK_ACTION (my_atk_action_get_type ())
33 #define MY_ATK_ACTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MY_TYPE_ATK_ACTION, MyAtkAction))
34 #define MY_ATK_ACTION_CLASS(vtable) (G_TYPE_CHECK_CLASS_CAST ((vtable), MY_TYPE_ATK_ACTION, MyAtkActionClass))
35 #define MY_IS_ATK_ACTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MY_TYPE_ATK_ACTION))
36 #define MY_IS_ATK_ACTION_CLASS(vtable) (G_TYPE_CHECK_CLASS_TYPE ((vtable), MY_TYPE_ATK_ACTION))
37 #define MY_ATK_ACTION_GET_CLASS(inst) (G_TYPE_INSTANCE_GET_CLASS ((inst), MY_TYPE_ATK_ACTION, MyAtkActionClass))
39 typedef struct _MyAtkAction MyAtkAction;
40 typedef struct _MyAtkActionPrivate MyAtkActionPrivate;
41 typedef struct _MyAtkActionClass MyAtkActionClass;
43 typedef void (* MyAtkActionFunc) (MyAtkAction *action);
47 MyAtkActionPrivate *priv;
48 gint last_performed_action;//this field is changed when action is performed
52 struct _MyAtkActionClass {
53 MyAtkObjectClass parent;
56 GType my_atk_action_get_type (void);
58 guint my_atk_action_add_action (MyAtkAction *action,
59 const gchar *action_name,
60 const gchar *action_description,
61 const gchar *action_keybinding);
63 #endif /*MY_ATK_ACTION_H*/