diff options
Diffstat (limited to 'a11y/e-table/gal-a11y-e-cell.h')
-rw-r--r-- | a11y/e-table/gal-a11y-e-cell.h | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/a11y/e-table/gal-a11y-e-cell.h b/a11y/e-table/gal-a11y-e-cell.h index ff9e5162d8..81f5f147ca 100644 --- a/a11y/e-table/gal-a11y-e-cell.h +++ b/a11y/e-table/gal-a11y-e-cell.h @@ -22,6 +22,9 @@ typedef struct _GalA11yECell GalA11yECell; typedef struct _GalA11yECellClass GalA11yECellClass; typedef struct _GalA11yECellPrivate GalA11yECellPrivate; +typedef struct _ActionInfo ActionInfo; +typedef void (*ACTION_FUNC) (GalA11yECell *cell); + /* This struct should actually be larger as this isn't what we derive from. * The GalA11yECellPrivate comes right after the parent class structure. @@ -35,12 +38,24 @@ struct _GalA11yECell { int model_col; int view_col; int row; + AtkStateSet *state_set; + GList *action_list; + gint action_idle_handler; + ACTION_FUNC action_func; }; struct _GalA11yECellClass { AtkObjectClass parent_class; }; +struct _ActionInfo { + gchar *name; + gchar *description; + gchar *keybinding; + ACTION_FUNC do_action_func; +}; + + /* Standard Glib function */ GType gal_a11y_e_cell_get_type (void); @@ -58,4 +73,19 @@ void gal_a11y_e_cell_construct (AtkObject *object, int view_col, int row); +void gal_a11y_e_cell_type_add_action_interface (GType type); + +gboolean gal_a11y_e_cell_add_action (GalA11yECell *cell, + const gchar *action_name, + const gchar *action_description, + const gchar *action_keybinding, + ACTION_FUNC action_func); + +gboolean gal_a11y_e_cell_remove_action (GalA11yECell *cell, + gint action_id); + +gboolean gal_a11y_e_cell_remove_action_by_name (GalA11yECell *cell, + const gchar *action_name); + + #endif /* ! __GAL_A11Y_E_CELL_H__ */ |