summaryrefslogtreecommitdiff
path: root/gtk/a11y/gtkcellaccessibleparent.c
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2011-07-09 23:56:42 -0400
committerMatthias Clasen <mclasen@redhat.com>2011-07-09 23:57:16 -0400
commitddfa756ac702c996e54802ce38b6173b7c6ad151 (patch)
tree72b08e3c747795eaf97dd2c7d2607f261f8b2df2 /gtk/a11y/gtkcellaccessibleparent.c
parent4e5629bed11c5018704dd7de1e23311d31ed9af5 (diff)
downloadgtk+-ddfa756ac702c996e54802ce38b6173b7c6ad151.tar.gz
Convert GailCellParent to GtkCellAccessibleParent
Diffstat (limited to 'gtk/a11y/gtkcellaccessibleparent.c')
-rw-r--r--gtk/a11y/gtkcellaccessibleparent.c97
1 files changed, 97 insertions, 0 deletions
diff --git a/gtk/a11y/gtkcellaccessibleparent.c b/gtk/a11y/gtkcellaccessibleparent.c
new file mode 100644
index 0000000000..b63e5af57f
--- /dev/null
+++ b/gtk/a11y/gtkcellaccessibleparent.c
@@ -0,0 +1,97 @@
+/* GAIL - The GNOME Accessibility Implementation Library
+
+ * Copyright 2001 Sun Microsystems Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser 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
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser 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.
+ */
+
+#include "config.h"
+
+#include <gtk/gtk.h>
+#include "gtkcellaccessibleparent.h"
+
+GType
+_gtk_cell_accessible_parent_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile))
+ {
+ GType g_define_type_id =
+ g_type_register_static_simple (G_TYPE_INTERFACE,
+ "GtkCellAccessibleParent",
+ sizeof (GtkCellAccessibleParentIface),
+ NULL,
+ 0,
+ NULL,
+ 0);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+void
+_gtk_cell_accessible_parent_get_cell_extents (GtkCellAccessibleParent *parent,
+ GtkCellAccessible *cell,
+ gint *x,
+ gint *y,
+ gint *width,
+ gint *height,
+ AtkCoordType coord_type)
+{
+ GtkCellAccessibleParentIface *iface;
+
+ g_return_if_fail (GTK_IS_CELL_ACCESSIBLE_PARENT (parent));
+
+ iface = GTK_CELL_ACCESSIBLE_PARENT_GET_IFACE (parent);
+
+ if (iface->get_cell_extents)
+ (iface->get_cell_extents) (parent, cell, x, y, width, height, coord_type);
+}
+
+void
+_gtk_cell_accessible_parent_get_cell_area (GtkCellAccessibleParent *parent,
+ GtkCellAccessible *cell,
+ GdkRectangle *cell_rect)
+{
+ GtkCellAccessibleParentIface *iface;
+
+ g_return_if_fail (GTK_IS_CELL_ACCESSIBLE_PARENT (parent));
+ g_return_if_fail (cell_rect);
+
+ iface = GTK_CELL_ACCESSIBLE_PARENT_GET_IFACE (parent);
+
+ if (iface->get_cell_area)
+ (iface->get_cell_area) (parent, cell, cell_rect);
+}
+
+gboolean
+_gtk_cell_accessible_parent_grab_focus (GtkCellAccessibleParent *parent,
+ GtkCellAccessible *cell)
+{
+ GtkCellAccessibleParentIface *iface;
+
+ g_return_val_if_fail (GTK_IS_CELL_ACCESSIBLE_PARENT (parent), FALSE);
+
+ iface = GTK_CELL_ACCESSIBLE_PARENT_GET_IFACE (parent);
+
+ if (iface->grab_focus)
+ return (iface->grab_focus) (parent, cell);
+ else
+ return FALSE;
+}