PROP_SELECTION,
PROP_VALUE,
PROP_VISIBLE_DATA,
+ PROP_ROLE,
+ PROP_TABLE_CAPTION,
+ PROP_TABLE_COLUMN_DESCRIPTION,
+ PROP_TABLE_COLUMN_HEADER,
+ PROP_TABLE_ROW_DESCRIPTION,
+ PROP_TABLE_ROW_HEADER,
+ PROP_TABLE_SUMMARY,
+ PROP_MODEL,
PROP_LAST /* gobject convention */
};
static const gchar* atk_object_name_property_selection = "accessible-selection";
static const gchar* atk_object_name_property_value = "accessible-value";
static const gchar* atk_object_name_property_visible = "accessible-visible-data";
+static const gchar* atk_object_name_property_role = "accessible-role";
+static const gchar* atk_object_name_property_table_caption = "accessible-table-caption";
+static const gchar* atk_object_name_property_table_column_description = "accessible-table-column-description";
+static const gchar* atk_object_name_property_table_column_header = "accessible-table-column-header";
+static const gchar* atk_object_name_property_table_row_description = "accessible-table-row-description";
+static const gchar* atk_object_name_property_table_row_header = "accessible-table-row-header";
+static const gchar* atk_object_name_property_table_summary = "accessible-table-summary";
+static const gchar* atk_object_name_property_model = "accessible-model";
GType
atk_object_get_type (void)
"Is used to notify that a child has been added or removed ",
ATK_TYPE_OBJECT,
G_PARAM_READWRITE));
- g_object_class_install_property (gobject_class,
- PROP_PARENT,
+ g_object_class_install_property (gobject_class,
+ PROP_PARENT,
g_param_spec_object (atk_object_name_property_parent,
"Accessible Parent",
"Is used to notify that the parent has changed ",
"Is used to notify that the visual appearance of the object has changed ",
ATK_TYPE_OBJECT,
G_PARAM_READWRITE));
+ g_object_class_install_property (gobject_class,
+ PROP_ROLE,
+ g_param_spec_int (atk_object_name_property_role,
+ "Accessible Role",
+ "The accessible role this object ",
+ 0,
+ G_MAXINT,
+ 0,
+ G_PARAM_READWRITE));
+ g_object_class_install_property (gobject_class,
+ PROP_TABLE_CAPTION,
+ g_param_spec_object (atk_object_name_property_table_caption,
+ "Accessible Table Caption",
+ "Is used to notify that the table caption has changed ",
+ ATK_TYPE_OBJECT,
+ G_PARAM_READWRITE));
+ g_object_class_install_property (gobject_class,
+ PROP_TABLE_COLUMN_HEADER,
+ g_param_spec_object (atk_object_name_property_table_column_header,
+ "Accessible Table Column Header",
+ "Is used to notify that the table column header has changed ",
+ ATK_TYPE_OBJECT,
+ G_PARAM_READWRITE));
+ g_object_class_install_property (gobject_class,
+ PROP_TABLE_COLUMN_DESCRIPTION,
+ g_param_spec_int (atk_object_name_property_table_column_description,
+ "Accessible Table Columnn Description",
+ "Is used to notify that the table columnscription has changed ",
+ 0,
+ G_MAXINT,
+ 0,
+ G_PARAM_READWRITE));
+ g_object_class_install_property (gobject_class,
+ PROP_TABLE_ROW_HEADER,
+ g_param_spec_object (atk_object_name_property_table_row_header,
+ "Accessible Table Row Header",
+ "Is used to notify that the table row header has changed ",
+ ATK_TYPE_OBJECT,
+ G_PARAM_READWRITE));
+ g_object_class_install_property (gobject_class,
+ PROP_TABLE_ROW_DESCRIPTION,
+ g_param_spec_int (atk_object_name_property_table_row_description,
+ "Accessible Table Row Description",
+ "Is used to notify that the table row description has changed ",
+ 0,
+ G_MAXINT,
+ 0,
+ G_PARAM_READWRITE));
+ g_object_class_install_property (gobject_class,
+ PROP_TABLE_SUMMARY,
+ g_param_spec_object (atk_object_name_property_table_summary,
+ "Accessible Table Summary",
+ "Is used to notify that the table summary has changed ",
+ ATK_TYPE_OBJECT,
+ G_PARAM_READWRITE));
+ g_object_class_install_property (gobject_class,
+ PROP_MODEL,
+ g_param_spec_object (atk_object_name_property_model,
+ "Accessible Model",
+ "Is used to notify that the model for Table or Tree has changed ",
+ ATK_TYPE_OBJECT,
+ G_PARAM_READWRITE));
/*
* The signal "children_changed" supports two details:
* "add" and "remove"
*/
#include "atktable.h"
+#include "atkmarshal.h"
+
+enum {
+ MODEL_CHANGED,
+ LAST_SIGNAL
+};
+
+struct _AtkTableIfaceClass
+{
+ GObjectClass parent;
+};
+
+typedef struct _AtkTableIfaceClass AtkTableIfaceClass;
+
+static void atk_table_base_init (gpointer *g_class);
+
+static guint atk_table_signals[LAST_SIGNAL] = { 0 };
GType
atk_table_get_type ()
GTypeInfo tinfo =
{
sizeof (AtkTableIface),
- (GBaseInitFunc) NULL,
+ (GBaseInitFunc) atk_table_base_init,
(GBaseFinalizeFunc) NULL,
};
return type;
}
+
+static void
+atk_table_base_init (gpointer *g_class)
+{
+ static gboolean initialized = FALSE;
+
+ if (! initialized)
+ {
+ atk_table_signals[MODEL_CHANGED] =
+ g_signal_newc ("model_changed",
+ ATK_TYPE_TABLE,
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (AtkTableIface, model_changed),
+ (GSignalAccumulator) NULL, NULL,
+ atk_marshal_VOID__INT_INT_INT_INT_INT,
+ G_TYPE_NONE,
+ 5, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT,
+ G_TYPE_INT);
+ initialized = TRUE;
+ }
+}
+
/**
* atk_table_ref_at:
* @table: a GObject instance that implements AtkTableIface