Re: [g-a-devel]Accessibility for Gdk widgets in Pager Applet [workspace switcher]



Rajkumar Sivasamy wrote:
> 
> Hi,
> Am looking at pager applet in terms of accessibility. (Desk Guide applet
> is rewritten as pager applet in gnome-panel/applets/gen_util). The UI
> widgets of this applet are part of the library "libwnck", the library
> makes use of Gdk widgets to draw the applet's "workspace icon" (the base
> gdk rectangle representing a workspace) and the "workspace content icon"
> (the gdk rectangle corresponding to a particular component in a
> workspace).

When dealing with widgets that paint non-GOBject-based elements
into themselves (such as Gdk rectangles), our options are limited.
About the best you can do is to implement accessibility on the
container, override get_n_children and ref_child, and return 
special AtkObject instances which you create inside the applet code.
You can't really create factory instances for the Gdk elements since 
they are not really widgets, so you create them on-demand inside
the container's ref_child implementation, and must cache them, etc.

These AtkObjects (the child objects of the container's AtkObject)
should implement AtkComponent, and AtkAction; I believe that the
container should implement AtkSelection.   The AtkAction impleentation
for the children might be unnecessary if it is fullt redundant with
AtkSelection for the container (i.e. the Pager GtkWidget).

-Bill

> Workspaces can be switched from one to another by clicking on the
> corresponding "workspace icon" of the applet. In terms of accessibility
> I guess AtkAction interface has to be implemented for the "workspace
> icon" which inturn is a Gdk Rectangle.
> 
> The pager structure inturn has three GtkWidgets:
> a) GtkWidget *applet,
> b) GtkWidget *frame,
> c) GtkWidget *pager.
> This Gtk pager widget is burried to Gtk frame, which inturn is
> encapsulated to Gtk applet. I could able to set up tooltip for this Gtk
> applet widget, which will be displayed when the mouse scrolls over this
> Applet.
> 
> But am not sure of how to go ahead in implementing Atk interfaces for
> these gdk widgets (Gdk Rectangle). For which widget the get_accessible
> method has to be implemented?
> 
> The ferret o/p shows:
> Applet's Accessible Type as GailContainer and
> Parent Accessible Type as GailBox.
> 
> Pls, mail back u'r comments on this.
> 
> Thanks & Regards,
> Raj.
> _______________________________________________
> 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]