Dnia 25-02-2005, pią o godzinie 15:23 +0100, zielone napisało: :)
> Is there a way to obtain pointer to any gtkwidget from other application
> I click on some window and i want to receive pointer to this clicked
> object
> 
> I know how i can do it in xlib, from window id in xlib i can receive
> gdkwindow
> But i dont know how to get gtkwidget from gdkwindow or xid:/

You can't. Widgets are only meaningful in context of GTK+, and are
internal to each application's process space. X only knows about X
windows, and that's the only type of info you can get. You can't map
from XID to <some place in address space of other process>, which is
what GTK+ widgets effectively are.

> What i have to do is check what is type name of clicked window, for
> example
> If i clicked edit control i should receive GtkEntry, if i clicked button
> control
> I should receive GtkButton, i use for this
> g_type_name(GTK_WIDGET_TYPE(pWidget))
> But i dont have this pointer pWidget:/ for controls in my window is
> simple to get widget object
> But from other app i dont have idea how can i do it:/

Only way for you would be to use ATK (accessibility toolkit), which does
know about widgets (using special support built in in GTK+). Note that
it requires ATK to be enabled and support libraries to be installed, and
also won't give you pointer to something you can apply GTK_WIDGET_TYPE()
on, instead it will return set of information describing role and value
of widget suitable for accessibility application.

> Maybe i can distinguish types of object in xlib or gdk???? I want to
> have unique
> Indetifier of object type, that i can obtain if user click frame or edit
> or button etc

I don't really get that part...

HTH,
Maciej

-- 
Maciej Katafiasz <[EMAIL PROTECTED]>

_______________________________________________
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Reply via email to