XForms: How to swallow X clients and XForms menu suggestion.

Arcadio A. Sincero Jr. (asincero@erols.com)
Sat, 22 Nov 1997 20:39:14 -0500 (EST)

To subscribers of the xforms list from "Arcadio A. Sincero Jr." <asincero@erols.com> :

Hello XForms mailing list!,

I'm trying to write a toolbar utility with XForms, and one of the
capabilities I'd like it to have is to be able to swallow other X clients'
windows (such as 'xbiff' or 'xload'). However, I am having a heck of time
figuring out how to do this.

I know this question is more of a general XLib question rather
than an XForms specific question. But I am at a loss here, and would
appreciate some hints. Plus, I am writing the program in XForms ;-).

I believe you basically call XReparentWindow() with the window ID
of the X client you are trying to swallow and the window ID of an XForms
canvas object as the new parent to get an XForms program to swallow
another X client. Am I right on this? However, assuming this is correct,
my problem is obtaining the window ID of the X client I am trying to
swallow. I figured on using XQueryTree() to get a list of all child
windows of the root window, then use XFetchName() on all the child windows
returned by XQueryTree() to obtain a list of names of all the windows
which have names. Then I can use this list of names to determine the
window ID of the X client I want to swallow.

The part that goes wrong is with the XQueryTree() part. I do
this:

dpy = XOpenDisplay(NULL);
XQueryTree(dpy, XDefaultRootWindow(dpy), &rootr, &parent,
&children, &numchild);

But I'm not getting a list of all the child windows of the root. At least
it doesn't seem so. Is the syntax of that correct? Am I even approaching
this problem correctly? Can anybody suggest a better approach?

BTW - the X server I'm using is Hummingbird's eXceed 95 for
Windows 95. The X11 I'm using is X11R6 on Debian GNU/Linux v1.3.

Also, would being able to have mini-pixmaps placed next to menu
items for XForms menus be too hard to add? I think this would be a nice
touch. Something like what Qt and Win32 menus have.

Thanks a lot in advance for any help on this!

=============================================================================
Arcadio A. Sincero Jr. a.k.a The TicK -=LpC=-
Undergraduate Computer Science Major/Linux Enthusiast/Competitive Bodybuilder
WWW: /cgi-bin/exit-to?http://www.coming.to.a.web.site.near.you.com
e-mail: asincero@erols.com

"Only lamers quote themselves in their .signatures."
- Arcadio A. Sincero Jr., 1997

_________________________________________________
To unsubscribe, send the message "unsubscribe" to
xforms-request@bob.usuf2.usuhs.mil or see
http://bob.usuf2.usuhs.mil/mailserv/xforms.html
Xforms Home Page: http://bragg.phys.uwm.edu/xforms
List Archive: http://bob.usuf2.usuhs.mil/mailserv/list-archives/