AtkUtil

AtkUtil — A set of ATK utility functions for event and toolkit support.

Synopsis




            AtkUtil;
enum        AtkCoordType;
guint       atk_add_focus_tracker           (AtkEventListener focus_tracker);
void        atk_remove_focus_tracker        (guint tracker_id);
void        atk_focus_tracker_init          (AtkEventListenerInit init);
void        atk_focus_tracker_notify        (AtkObject *object);
void        (*AtkEventListener)             (AtkObject *obj);
void        (*AtkEventListenerInit)         (void);
guint       atk_add_global_event_listener   (GSignalEmissionHook listener,
                                             const gchar *event_type);
void        atk_remove_global_event_listener
                                            (guint listener_id);
            AtkKeyEventStruct;
enum        AtkKeyEventType;
gint        (*AtkKeySnoopFunc)              (AtkKeyEventStruct *event,
                                             gpointer func_data);
guint       atk_add_key_event_listener      (AtkKeySnoopFunc listener,
                                             gpointer data);
void        atk_remove_key_event_listener   (guint listener_id);
AtkObject*  atk_get_root                    (void);
AtkObject*  atk_get_focus_object            (void);
const gchar* atk_get_toolkit_name           (void);
const gchar* atk_get_toolkit_version        (void);

Object Hierarchy


  GObject
   +----AtkUtil

Description

A set of ATK utility functions which are used to support event registration of various types, and obtaining the 'root' accessible of a process and information about the current ATK implementation and toolkit version.

Details

AtkUtil

typedef struct _AtkUtil AtkUtil;

The AtkUtil struct does not contain any fields.


enum AtkCoordType

typedef enum {
  ATK_XY_SCREEN,
  ATK_XY_WINDOW
}AtkCoordType;

Specifies how xy coordinates are to be interpreted. Used by functions such as atk_component_get_position() and atk_text_get_character_extents()

ATK_XY_SCREEN specifies xy coordinates relative to the screen
ATK_XY_WINDOW specifies xy coordinates relative to the widget's top-level window

atk_add_focus_tracker ()

guint       atk_add_focus_tracker           (AtkEventListener focus_tracker);

Adds the specified function to the list of functions to be called when an object receives focus.

focus_tracker : Function to be added to the list of functions to be called when an object receives focus.
Returns : added focus tracker id, or 0 on failure.

atk_remove_focus_tracker ()

void        atk_remove_focus_tracker        (guint tracker_id);

Removes the specified focus tracker from the list of functions to be called when any object receives focus.

tracker_id : the id of the focus tracker to remove

atk_focus_tracker_init ()

void        atk_focus_tracker_init          (AtkEventListenerInit init);

Specifies the function to be called for focus tracker initialization. This function should be called by an implementation of the ATK interface if any specific work needs to be done to enable focus tracking.

init : Function to be called for focus tracker initialization

atk_focus_tracker_notify ()

void        atk_focus_tracker_notify        (AtkObject *object);

Cause the focus tracker functions which have been specified to be executed for the object.

object : an AtkObject

AtkEventListener ()

void        (*AtkEventListener)             (AtkObject *obj);

A function which is called when an object emits a matching event, as used in atk_add_focus_tracker. Currently the only events for which object-specific handlers are supported are events of type "focus:". Most clients of ATK will prefer to attach signal handlers for the various ATK signals instead.

see: atk_add_focus_tracker.

obj : An AtkObject instance for whom the callback will be called when the specified event (e.g. 'focus:') takes place.

AtkEventListenerInit ()

void        (*AtkEventListenerInit)         (void);

An AtkEventListenerInit function is a special function that is called in order to initialize the per-object event registration system used by AtkEventListener, if any preparation is required.

see: atk_focus_tracker_init.


atk_add_global_event_listener ()

guint       atk_add_global_event_listener   (GSignalEmissionHook listener,
                                             const gchar *event_type);

Adds the specified function to the list of functions to be called when an event of type event_type occurs.

listener : the listener to notify
event_type : the type of event for which notification is requested
Returns : added event listener id, or 0 on failure.

atk_remove_global_event_listener ()

void        atk_remove_global_event_listener
                                            (guint listener_id);

Removes the specified event listener

listener_id : the id of the event listener to remove

AtkKeyEventStruct

typedef struct {
  gint type;
  guint state;
  guint keyval;
  gint length;
  gchar *string;
  guint16 keycode;
  guint32 timestamp;	
} AtkKeyEventStruct;

Encapsulates information about a key event.

gint type; An AtkKeyEventType, generally one of ATK_KEY_EVENT_PRESS or ATK_KEY_EVENT_RELEASE
guint state; A bitmask representing the state of the modifier keys immediately after the event takes place. The meaning of the bits is currently defined to match the bitmask used by GDK in GdkEventType.state, see http://developer.gnome.org/doc/API/2.0/gdk/gdk-Event-Structures.htmlGdkEventKey
guint keyval; A guint representing a keysym value corresponding to those used by GDK and X11: see /usr/X11/include/keysymdef.h.
gint length; The length of member string.
gchar *string; A string containing one of the following: either a string approximating the text that would result from this keypress, if the key is a control or graphic character, or a symbolic name for this keypress. Alphanumeric and printable keys will have the symbolic key name in this string member, for instance "A". "0", "semicolon", "aacute". Keypad keys have the prefix "KP".
guint16 keycode; The raw hardware code that generated the key event. This field is raraly useful.
guint32 timestamp; A timestamp in milliseconds indicating when the event occurred. These timestamps are relative to a starting point which should be considered arbitrary, and only used to compare the dispatch times of events to one another.

enum AtkKeyEventType

typedef enum
{
  ATK_KEY_EVENT_PRESS,
  ATK_KEY_EVENT_RELEASE,
  ATK_KEY_EVENT_LAST_DEFINED
} AtkKeyEventType;

Specifies the type of a keyboard evemt.

ATK_KEY_EVENT_PRESS specifies a key press event
ATK_KEY_EVENT_RELEASE specifies a key release event
ATK_KEY_EVENT_LAST_DEFINED Not a valid value; specifies end of enumeration

AtkKeySnoopFunc ()

gint        (*AtkKeySnoopFunc)              (AtkKeyEventStruct *event,
                                             gpointer func_data);

An AtkKeySnoopFunc is a type of callback which is called whenever a key event occurs, if registered via atk_add_key_event_listener. It allows for pre-emptive interception of key events via the return code as described below.

event : an AtkKeyEventStruct containing information about the key event for which notification is being given.
func_data : a block of data which will be passed to the event listener, on notification.
Returns : TRUE (nonzero) if the event emission should be stopped and the event discarded without being passed to the normal GUI recipient; FALSE (zero) if the event dispatch to the client application should proceed as normal. see: atk_add_key_event_listener.

atk_add_key_event_listener ()

guint       atk_add_key_event_listener      (AtkKeySnoopFunc listener,
                                             gpointer data);

Adds the specified function to the list of functions to be called when a key event occurs. The data element will be passed to the AtkKeySnoopFunc (listener) as the func_data param, on notification.

listener : the listener to notify
data : a gpointer that points to a block of data that should be sent to the registered listeners, along with the event notification, when it occurs.
Returns : added event listener id, or 0 on failure.

atk_remove_key_event_listener ()

void        atk_remove_key_event_listener   (guint listener_id);

Removes the specified event listener

listener_id : the id of the event listener to remove

atk_get_root ()

AtkObject*  atk_get_root                    (void);

Gets the root accessible container for the current application.

Returns : the root accessible container for the current application

atk_get_focus_object ()

AtkObject*  atk_get_focus_object            (void);

Gets the currently focused object.

Returns:

Returns : the currently focused object for the current application

Since ATK 1.6


atk_get_toolkit_name ()

const gchar* atk_get_toolkit_name           (void);

Gets name string for the GUI toolkit implementing ATK for this application.

Returns : name string for the GUI toolkit implementing ATK for this application

atk_get_toolkit_version ()

const gchar* atk_get_toolkit_version        (void);

Gets version string for the GUI toolkit implementing ATK for this application.

Returns : version string for the GUI toolkit implementing ATK for this application