summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPadraig O'Briain <padraigo@src.gnome.org>2001-11-21 14:52:34 +0000
committerPadraig O'Briain <padraigo@src.gnome.org>2001-11-21 14:52:34 +0000
commitc3cf34712e7d9be39c72729691a42c4206dacc6e (patch)
treeeafd034c5190c5a3207080f64985f82f9ffa7b02
parent4b35fa077afce4cee9a85be4a202239b900b786f (diff)
downloadatk-c3cf34712e7d9be39c72729691a42c4206dacc6e.tar.gz
Add enum AtkLayer and functions atk_object_get_layer and
* atk/atkobject.[c|h], docs/atk-sections.txt, docs/tmpl/atkobject.sgml: Add enum AtkLayer and functions atk_object_get_layer and atk_object_get_mdi_zorder
-rw-r--r--ChangeLog8
-rwxr-xr-xatk/atkobject.c88
-rwxr-xr-xatk/atkobject.h27
-rw-r--r--docs/atk-sections.txt3
-rw-r--r--docs/tmpl/atkobject.sgml33
5 files changed, 155 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index d8b5e8e..5d86f3b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2001-11-21 Padraig O'Briain <padraig.obriain@sun.com>
+
+ * atk/atkobject.[c|h], docs/atk-sections.txt, docs/tmpl/atkobject.sgml:
+ Add enum AtkLayer and functions atk_object_get_layer and
+ atk_object_get_mdi_zorder
+
2001-11-20 Padraig O'Briain <padraig.obriain@sun.com>
* atk/atkobject.[c|h]:
@@ -6,7 +12,7 @@
instead of AtkPropertyValues
Update atk_object_notify_state_change() to emit state-change signal
- * atk/atkstate.[c|h], docs.atkstate.sgml:
+ * atk/atkstate.[c|h], docs/tmpl/atkstate.sgml:
Remove state ATK_STATE_COLLAPSED
2001-11-19 Bill Haneman <bill.haneman@sun.com>
diff --git a/atk/atkobject.c b/atk/atkobject.c
index a93ddfc..c99c33d 100755
--- a/atk/atkobject.c
+++ b/atk/atkobject.c
@@ -31,9 +31,10 @@ enum
PROP_NAME,
PROP_DESCRIPTION,
PROP_PARENT, /* ancestry has changed */
- PROP_STATE, /* AtkStateSet for the object has changed */
PROP_VALUE,
PROP_ROLE,
+ PROP_LAYER,
+ PROP_MDI_ZORDER,
PROP_TABLE_CAPTION,
PROP_TABLE_COLUMN_DESCRIPTION,
PROP_TABLE_COLUMN_HEADER,
@@ -75,6 +76,7 @@ static G_CONST_RETURN gchar*
(AtkObject *object);
static AtkObject* atk_object_real_get_parent (AtkObject *object);
static AtkRole atk_object_real_get_role (AtkObject *object);
+static AtkLayer atk_object_real_get_layer (AtkObject *object);
static AtkStateSet* atk_object_real_ref_state_set
(AtkObject *object);
static void atk_object_real_set_name (AtkObject *object,
@@ -106,6 +108,8 @@ static const gchar* atk_object_name_property_description = "accessible-descripti
static const gchar* atk_object_name_property_parent = "accessible-parent";
static const gchar* atk_object_name_property_value = "accessible-value";
static const gchar* atk_object_name_property_role = "accessible-role";
+static const gchar* atk_object_name_property_component_layer = "accessible-component-layer";
+static const gchar* atk_object_name_property_component_mdi_zorder = "accessible-component-mdi-zorder";
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";
@@ -157,6 +161,8 @@ atk_object_class_init (AtkObjectClass *klass)
klass->get_index_in_parent = NULL;
klass->ref_relation_set = atk_object_real_ref_relation_set;
klass->get_role = atk_object_real_get_role;
+ klass->get_layer = atk_object_real_get_layer;
+ klass->get_mdi_zorder = NULL;
klass->ref_state_set = atk_object_real_ref_state_set;
klass->set_name = atk_object_real_set_name;
klass->set_description = atk_object_real_set_description;
@@ -211,12 +217,30 @@ atk_object_class_init (AtkObjectClass *klass)
PROP_ROLE,
g_param_spec_int (atk_object_name_property_role,
"Accessible Role",
- "The accessible role this object ",
+ "The accessible role of this object ",
0,
G_MAXINT,
0,
G_PARAM_READWRITE));
g_object_class_install_property (gobject_class,
+ PROP_LAYER,
+ g_param_spec_int (atk_object_name_property_component_layer,
+ "Accessible Layer",
+ "The accessible layer of this object ",
+ 0,
+ G_MAXINT,
+ 0,
+ G_PARAM_READABLE));
+ g_object_class_install_property (gobject_class,
+ PROP_MDI_ZORDER,
+ g_param_spec_int (atk_object_name_property_component_mdi_zorder,
+ "Accessible MDI Value",
+ "The accessible MDI value of this object ",
+ G_MININT,
+ G_MAXINT,
+ G_MININT,
+ G_PARAM_READABLE));
+ g_object_class_install_property (gobject_class,
PROP_TABLE_CAPTION,
g_param_spec_string (atk_object_name_property_table_caption,
"Accessible Table Caption",
@@ -523,6 +547,53 @@ atk_object_get_role (AtkObject *accessible)
}
/**
+ * atk_object_get_layer:
+ * @accessible: an #AtkObject
+ *
+ * Gets the layer of the accessible.
+ *
+ * Returns: an #AtkLayer which is the layer of the accessible
+ **/
+AtkLayer
+atk_object_get_layer (AtkObject *accessible)
+{
+ AtkObjectClass *klass;
+
+ g_return_val_if_fail (ATK_IS_OBJECT (accessible), ATK_LAYER_INVALID);
+
+ klass = ATK_OBJECT_GET_CLASS (accessible);
+ if (klass->get_layer)
+ return (klass->get_layer) (accessible);
+ else
+ return ATK_LAYER_INVALID;
+}
+
+/**
+ * atk_object_get_mdi_zorder:
+ * @accessible: an #AtkObject
+ *
+ * Gets the zorder of the accessible. The value G_MININT will be returned
+ * if the layer of the accessible is not ATK_LAYER_MDI.
+ *
+ * Returns: a gint which is the zorder of the accessible, i.e. the depth at
+ * which the component is shown in relation to other components in the same
+ * container.
+ **/
+gint
+atk_object_get_mdi_zorder (AtkObject *accessible)
+{
+ AtkObjectClass *klass;
+
+ g_return_val_if_fail (ATK_IS_OBJECT (accessible), G_MININT);
+
+ klass = ATK_OBJECT_GET_CLASS (accessible);
+ if (klass->get_mdi_zorder)
+ return (klass->get_mdi_zorder) (accessible);
+ else
+ return G_MININT;
+}
+
+/**
* atk_object_ref_state_set:
* @accessible: an #AtkObject
*
@@ -814,10 +885,15 @@ atk_object_real_get_property (GObject *object,
break;
case PROP_DESCRIPTION:
g_value_set_string (value, atk_object_get_description (accessible));
- break;
case PROP_ROLE:
g_value_set_int (value, atk_object_get_role (accessible));
break;
+ case PROP_LAYER:
+ g_value_set_int (value, atk_object_get_role (accessible));
+ break;
+ case PROP_MDI_ZORDER:
+ g_value_set_int (value, atk_object_get_mdi_zorder (accessible));
+ break;
case PROP_PARENT:
g_value_set_object (value, atk_object_get_parent (accessible));
break;
@@ -879,6 +955,12 @@ atk_object_real_get_role (AtkObject *object)
return object->role;
}
+static AtkLayer
+atk_object_real_get_layer (AtkObject *object)
+{
+ return object->layer;
+}
+
static AtkStateSet*
atk_object_real_ref_state_set (AtkObject *accessible)
{
diff --git a/atk/atkobject.h b/atk/atkobject.h
index 8987247..ff08a00 100755
--- a/atk/atkobject.h
+++ b/atk/atkobject.h
@@ -188,6 +188,28 @@ typedef enum
AtkRole atk_role_register (const gchar *name);
+/**
+ *AtkLayer:
+ *@ATK_LAYER_INVALID: The object does not have a layer
+ *@ATK_LAYER_BACKGROUND: This layer is reserved for the desktop background
+ *@ATK_LAYER_CANVAS: This layer is used for Canvas components
+ *@ATK_LAYER_WIDGET: This layer is normally used for components
+ *@ATK_LAYER_MDI: This layer is used for layered components
+ *@ATK_LAYER_POPUP: This layer is used for popup components, such as menus
+ *@ATK_LAYER_OVERLAY: This layer is reserved for future use.
+ *
+ * Describes the layer of a component
+ **/
+typedef enum
+{
+ ATK_LAYER_INVALID,
+ ATK_LAYER_BACKGROUND,
+ ATK_LAYER_CANVAS,
+ ATK_LAYER_WIDGET,
+ ATK_LAYER_MDI,
+ ATK_LAYER_POPUP,
+ ATK_LAYER_OVERLAY,
+} AtkLayer;
#define ATK_TYPE_OBJECT (atk_object_get_type ())
#define ATK_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), ATK_TYPE_OBJECT, AtkObject))
@@ -244,6 +266,7 @@ struct _AtkObject
AtkObject *accessible_parent;
AtkRole role;
AtkRelationSet *relation_set;
+ AtkLayer layer;
};
struct _AtkObjectClass
@@ -287,6 +310,8 @@ struct _AtkObjectClass
* Gets the role of the object
*/
AtkRole (* get_role) (AtkObject *accessible);
+ AtkLayer (* get_layer) (AtkObject *accessible);
+ gint (* get_mdi_zorder) (AtkObject *accessible);
/*
* Gets the state set of the object
*/
@@ -394,6 +419,8 @@ AtkObject* atk_object_ref_accessible_child (AtkObject *ac
gint i);
AtkRelationSet* atk_object_ref_relation_set (AtkObject *accessible);
AtkRole atk_object_get_role (AtkObject *accessible);
+AtkLayer atk_object_get_layer (AtkObject *accessible);
+gint atk_object_get_mdi_zorder (AtkObject *accessible);
AtkStateSet* atk_object_ref_state_set (AtkObject *accessible);
gint atk_object_get_index_in_parent (AtkObject *accessible);
void atk_object_set_name (AtkObject *accessible,
diff --git a/docs/atk-sections.txt b/docs/atk-sections.txt
index 4bc486d..966621a 100644
--- a/docs/atk-sections.txt
+++ b/docs/atk-sections.txt
@@ -143,6 +143,7 @@ ATK_NO_OP_OBJECT_FACTORY_GET_CLASS
<TITLE>AtkObject</TITLE>
AtkRole
atk_role_register
+AtkLayer
AtkImplementor
AtkImplementorIface
AtkRelationSet
@@ -155,6 +156,8 @@ atk_object_get_parent
atk_object_get_n_accessible_children
atk_object_ref_accessible_child
atk_object_ref_relation_set
+atk_object_get_layer
+atk_object_get_mdi_zorder
atk_object_get_role
atk_object_ref_state_set
atk_object_get_index_in_parent
diff --git a/docs/tmpl/atkobject.sgml b/docs/tmpl/atkobject.sgml
index 37091eb..5cab149 100644
--- a/docs/tmpl/atkobject.sgml
+++ b/docs/tmpl/atkobject.sgml
@@ -104,6 +104,19 @@ of the other ATK interfaces:
@Returns:
+<!-- ##### ENUM AtkLayer ##### -->
+<para>
+
+</para>
+
+@ATK_LAYER_INVALID:
+@ATK_LAYER_BACKGROUND:
+@ATK_LAYER_CANVAS:
+@ATK_LAYER_WIDGET:
+@ATK_LAYER_MDI:
+@ATK_LAYER_POPUP:
+@ATK_LAYER_OVERLAY:
+
<!-- ##### STRUCT AtkImplementor ##### -->
<para>
@@ -208,6 +221,26 @@ of the other ATK interfaces:
@Returns:
+<!-- ##### FUNCTION atk_object_get_layer ##### -->
+<para>
+
+</para>
+
+@accessible:
+@Returns:
+
+
+<!-- ##### FUNCTION atk_object_get_mdi_zorder ##### -->
+<para>
+
+</para>
+
+@accessible:
+@Returns:
+<!-- # Unused Parameters # -->
+@acessible:
+
+
<!-- ##### FUNCTION atk_object_get_role ##### -->
<para>