diff options
author | Matthias Clasen <mclasen@redhat.com> | 2011-07-09 23:56:42 -0400 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2011-07-09 23:57:16 -0400 |
commit | ddfa756ac702c996e54802ce38b6173b7c6ad151 (patch) | |
tree | 72b08e3c747795eaf97dd2c7d2607f261f8b2df2 /gtk/a11y/gtkcellaccessibleparent.c | |
parent | 4e5629bed11c5018704dd7de1e23311d31ed9af5 (diff) | |
download | gtk+-ddfa756ac702c996e54802ce38b6173b7c6ad151.tar.gz |
Convert GailCellParent to GtkCellAccessibleParent
Diffstat (limited to 'gtk/a11y/gtkcellaccessibleparent.c')
-rw-r--r-- | gtk/a11y/gtkcellaccessibleparent.c | 97 |
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; +} |