summaryrefslogtreecommitdiff
path: root/atspi/atspi-matchrule.h
diff options
context:
space:
mode:
authorMike Gorse <mgorse@novell.com>2010-11-23 18:00:46 -0500
committerMike Gorse <mgorse@novell.com>2010-11-23 18:00:46 -0500
commit1261f77b828844e305cbd9fa6e4ad2c2156f8f8a (patch)
treeab1836bb5430e33441f3ce1c8e9cef2a7ea7ad09 /atspi/atspi-matchrule.h
parent585683c4e828aaa1dbb883df9274d14753a58088 (diff)
downloadat-spi2-core-1261f77b828844e305cbd9fa6e4ad2c2156f8f8a.tar.gz
Add first pass at MatchRule/Collection implementation
Diffstat (limited to 'atspi/atspi-matchrule.h')
-rw-r--r--atspi/atspi-matchrule.h73
1 files changed, 73 insertions, 0 deletions
diff --git a/atspi/atspi-matchrule.h b/atspi/atspi-matchrule.h
new file mode 100644
index 00000000..ff3a685c
--- /dev/null
+++ b/atspi/atspi-matchrule.h
@@ -0,0 +1,73 @@
+/*
+ * AT-SPI - Assistive Technology Service Provider Interface
+ * (Gnome Accessibility Project; http://developer.gnome.org/projects/gap)
+ *
+ * Copyright 2002 Ximian, Inc.
+ * 2002 Sun Microsystems Inc.
+ *
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifndef _ATSPI_MATCH_RULE_H_
+#define _ATSPI_MATCH_RULE_H_
+
+#include "glib-object.h"
+
+#include "atspi-stateset.h"
+#include "atspi-constants.h"
+#include "atspi-types.h"
+
+#define ATSPI_TYPE_MATCH_RULE (atspi_match_rule_get_type ())
+#define ATSPI_MATCH_RULE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), ATSPI_TYPE_MATCH_RULE, AtspiMatchRule))
+#define ATSPI_MATCH_RULE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), ATSPI_TYPE_MATCH_RULE, AtspiMatchRuleClass))
+#define ATSPI_IS_MATCH_RULE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), ATSPI_TYPE_MATCH_RULE))
+#define ATSPI_IS_MATCH_RULE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), ATSPI_TYPE_MATCH_RULE))
+#define ATSPI_MATCH_RULE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), ATSPI_TYPE_MATCH_RULE, AtspiMatchRuleClass))
+
+typedef struct _AtspiMatchRule AtspiMatchRule;
+struct _AtspiMatchRule
+{
+ AtspiStateSet *states;
+ AtspiCollectionMatchType statematchtype;
+ GHashTable *attributes;
+ AtspiCollectionMatchType attributematchtype;
+ GArray *roles;
+ AtspiCollectionMatchType rolematchtype;
+ GArray *interfaces;
+ AtspiCollectionMatchType interfacematchtype;
+ gboolean invert;
+};
+
+typedef struct _AtspiMatchRuleClass AtspiMatchRuleClass;
+struct _AtspiMatchRuleClass
+{
+ GObjectClass parent_class;
+};
+
+AtspiMatchRule *
+atspi_match_rule_new (AtspiStateSet *states,
+ AtspiCollectionMatchType statematchtype,
+ GHashTable *attributes,
+ AtspiCollectionMatchType attributematchtype,
+ GArray *roles,
+ AtspiCollectionMatchType rolematchtype,
+ gboolean invert);
+
+gboolean
+_atspi_match_rule_marshal (AtspiMatchRule *rule, DBusMessageIter *iter);
+
+#endif /* _ATSPI_MATCH_RULE_H_ */