summaryrefslogtreecommitdiff
path: root/atk/atkrelation.c
diff options
context:
space:
mode:
authorBill Haneman <billh@src.gnome.org>2001-09-29 18:52:37 +0000
committerBill Haneman <billh@src.gnome.org>2001-09-29 18:52:37 +0000
commitf295431c9a451c8fa3f32b6bccf2f48aadb774fc (patch)
treeea73c0c04ff65636de2016ff9bd79ee8fa3feb3b /atk/atkrelation.c
parentd6f2bfd934aaa6599e8bf4b21aa1d2d30a2fe156 (diff)
downloadatk-f295431c9a451c8fa3f32b6bccf2f48aadb774fc.tar.gz
Added method for getting an AtkRelationType from a string.
Rev'ed package as a result.
Diffstat (limited to 'atk/atkrelation.c')
-rwxr-xr-xatk/atkrelation.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/atk/atkrelation.c b/atk/atkrelation.c
index e248190..0511efb 100755
--- a/atk/atkrelation.c
+++ b/atk/atkrelation.c
@@ -72,6 +72,22 @@ atk_relation_type_register (const gchar *name)
return (++type);
}
+AtkRelationType
+atk_relation_type_from_string (const gchar *name)
+{
+ /*
+ * TODO: implement properly,
+ * checking type namelist in conjunction with above function.
+ */
+ if ( !strcmp (name, "controlled_by") ) return ATK_RELATION_CONTROLLED_BY;
+ else if (!strcmp (name, "controller_for")) return ATK_RELATION_CONTROLLER_FOR;
+ else if (!strcmp (name, "label_for")) return ATK_RELATION_LABEL_FOR;
+ else if (!strcmp (name, "labelled_by")) return ATK_RELATION_LABELLED_BY;
+ else if (!strcmp (name, "member_of")) return ATK_RELATION_MEMBER_OF;
+ else return ATK_RELATION_NULL;
+}
+
+
/**
* atk_relation_new:
* @targets: an array of pointers to #AtkObjects