Re: [g-a-devel]Activate action for TreeView cell
- From: Marc Mulcahy <marc mulcahy sun com>
- To: "Padraig O'Briain" <Padraig Obriain sun com>, gnome-accessibility-devel gnome org
- Subject: Re: [g-a-devel]Activate action for TreeView cell
- Date: Tue, 26 Mar 2002 10:25:50 -0700
Padraig,
Seems like a reasonable idea.
Marc
At 05:08 PM 3/26/2002 +0000, Padraig O'Briain wrote:
Marc,
Do you have an opinion on adding an "activate" action for a cell?
Padraig
>
> Yes, I think reporting the name of a text cell as the text contents would
> be useful.
>
> Marc
>
> At 08:39 AM 3/26/2002 +0000, Padraig O'Briain wrote:
> >Following prompting from Michael, I have come to the conclusion that a
> >cell in a
> >GtkTreeView should have an activate action. This action would
correspond to
> >double clicking on the cell.
> >
> >The patch to implement the action is attached.
> >
> >When using at-poke I have noticed that the table cells report no name.
> >Should we
> >report the text associated with the cell as the name in a similar way as
> >we do
> >for a GtkLabel?
> >
> >Padraig
> >Index: gailtreeview.c
> >===================================================================
> >RCS file: /cvs/gnome/gail/gail/gailtreeview.c,v
> >retrieving revision 1.125
> >diff -u -p -r1.125 gailtreeview.c
> >--- gailtreeview.c 25 Mar 2002 14:06:24 -0000 1.125
> >+++ gailtreeview.c 26 Mar 2002 08:38:25 -0000
> >@@ -257,6 +257,7 @@ static void add_cell_actions
> > static
> > gboolean toggle_cell_expanded (GailCell
> > *cell);
> > static
> > gboolean toggle_cell_toggled (GailCell
> > *cell);
> > static
> > gboolean edit_cell (GailCell
> > *cell);
> >+static
> >gboolean activate_cell (GailCell
> >*cell);
> > static
> > void cell_destroyed (gpointer
data);
> > static
> > void cell_info_remove (GailTreeView
> > *tree_view,
> > GailCell
> > *cell);
> >@@ -3364,6 +3365,11 @@ add_cell_actions (GailCell *cell,
> > "creates a widget in which the contents of the cell can be
edited",
> > NULL,
> > edit_cell);
> >+ gail_cell_add_action (cell,
> >+ "activate",
> >+ "activate the cell",
> >+ NULL,
> >+ activate_cell);
> > }
> >
> > static gboolean
> >@@ -3476,6 +3482,36 @@ edit_cell (GailCell *cell)
> > path = gtk_tree_row_reference_get_path (cell_info->cell_row_ref);
> > g_return_val_if_fail (path, FALSE);
> > gtk_tree_view_set_cursor (tree_view, path, cell_info->cell_col_ref,
TRUE);
> >+ gtk_tree_path_free (path);
> >+ return TRUE;
> >+}
> >+
> >+static gboolean
> >+activate_cell (GailCell *cell)
> >+{
> >+ GailTreeViewCellInfo *cell_info;
> >+ GtkTreeView *tree_view;
> >+ GtkTreePath *path;
> >+ AtkObject *parent;
> >+ gboolean is_container_cell = FALSE;
> >+
> >+ editing = TRUE;
> >+ parent = atk_object_get_parent (ATK_OBJECT (cell));
> >+ if (GAIL_IS_CONTAINER_CELL (parent))
> >+ {
> >+ is_container_cell = TRUE;
> >+ parent = atk_object_get_parent (parent);
> >+ }
> >+
> >+ cell_info = find_cell_info (GAIL_TREE_VIEW (parent), cell, NULL);
> >+ g_return_val_if_fail (cell_info, FALSE);
> >+ g_return_val_if_fail (cell_info->cell_col_ref, FALSE);
> >+ g_return_val_if_fail (cell_info->cell_row_ref, FALSE);
> >+
> >+ tree_view = GTK_TREE_VIEW (GTK_ACCESSIBLE (parent)->widget);
> >+ path = gtk_tree_row_reference_get_path (cell_info->cell_row_ref);
> >+ g_return_val_if_fail (path, FALSE);
> >+ gtk_tree_view_row_activated (tree_view, path, cell_info->cell_col_ref);
> > gtk_tree_path_free (path);
> > return TRUE;
> > }
>
> _______________________________________________
> Gnome-accessibility-devel mailing list
> Gnome-accessibility-devel gnome org
> http://mail.gnome.org/mailman/listinfo/gnome-accessibility-devel
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]