aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/table
diff options
context:
space:
mode:
authorYuedong Du <yuedong.du@sun.com>2003-12-17 10:35:20 +0800
committerYuedong Du <york@src.gnome.org>2003-12-17 10:35:20 +0800
commit0a13fd3702b265298268ece517c3c99e519c7b79 (patch)
tree00820c3f4c07e0a5d335f425c5f41334e776f2fb /widgets/table
parente12d64b4eb485713e28eb1b5da075343fc715ea5 (diff)
downloadgsoc2013-evolution-0a13fd3702b265298268ece517c3c99e519c7b79.tar
gsoc2013-evolution-0a13fd3702b265298268ece517c3c99e519c7b79.tar.gz
gsoc2013-evolution-0a13fd3702b265298268ece517c3c99e519c7b79.tar.bz2
gsoc2013-evolution-0a13fd3702b265298268ece517c3c99e519c7b79.tar.lz
gsoc2013-evolution-0a13fd3702b265298268ece517c3c99e519c7b79.tar.xz
gsoc2013-evolution-0a13fd3702b265298268ece517c3c99e519c7b79.tar.zst
gsoc2013-evolution-0a13fd3702b265298268ece517c3c99e519c7b79.zip
Fixed bug 51917, add atk support for ClickToAdd
2003-12-16 Yuedong Du <yuedong.du@sun.com> Fixed bug 51917, add atk support for ClickToAdd * gal/a11y/e-table/Makefile.am: add files. * gal/a11y/e-table/gal-a11y-e-table-click-to-add-factory.c: (gal_a11y_e_table_click_to_add_factory_get_accessible_type), (gal_a11y_e_table_click_to_add_factory_create_accessible), (gal_a11y_e_table_click_to_add_factory_class_init), (gal_a11y_e_table_click_to_add_factory_init), (gal_a11y_e_table_click_to_add_factory_get_type): factory for ClickToAdd * gal/a11y/e-table/gal-a11y-e-table-click-to-add-factory.h: ditto * gal/a11y/e-table/gal-a11y-e-table-click-to-add.c: (etcta_get_n_actions), (etcta_get_description), (etcta_action_get_name), (idle_do_action), (etcta_do_action), (atk_action_interface_init): a "click" action interface. (etcta_get_name), (etcta_get_n_children), (etcta_ref_child): create accessible according to which child is available. Either rect or row. (etcta_class_init), (etcta_init), (gal_a11y_e_table_click_to_add_get_type), (etcta_event): listen to canvas event, emit children-changed signal when it found rect/row was changed. (gal_a11y_e_table_click_to_add_new): * gal/a11y/e-table/gal-a11y-e-table-click-to-add.h: * gal/a11y/e-table/gal-a11y-e-table-item-factory.c: (gal_a11y_e_table_item_factory_create_accessible): * gal/a11y/e-table/gal-a11y-e-table.c: (init_child_item), (et_get_n_children), (et_ref_child): change the trick way to create a11y object for a table item. Because ClickToAdd is also a table item, previous way do not work for clicktoadd. * gal/e-table/e-table-click-to-add.c: (etcta_class_init): atk_register the new a11y factory. svn path=/trunk/; revision=23956
Diffstat (limited to 'widgets/table')
-rw-r--r--widgets/table/e-table-click-to-add.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/widgets/table/e-table-click-to-add.c b/widgets/table/e-table-click-to-add.c
index 9c4d802c1e..df395ebaf7 100644
--- a/widgets/table/e-table-click-to-add.c
+++ b/widgets/table/e-table-click-to-add.c
@@ -39,6 +39,7 @@
#include "gal/util/e-util.h"
#include "gal/util/e-i18n.h"
#include "gal/util/e-marshal.h"
+#include "gal/a11y/e-table/gal-a11y-e-table-click-to-add-factory.h"
enum {
CURSOR_CHANGE,
@@ -494,6 +495,11 @@ etcta_class_init (ETableClickToAddClass *klass)
NULL, NULL,
e_marshal_VOID__INT_INT,
G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT);
+
+ atk_registry_set_factory_type (atk_get_default_registry (),
+ E_TABLE_CLICK_TO_ADD_TYPE,
+ gal_a11y_e_table_click_to_add_factory_get_type ());
+
}
static void