Finding an app's widget/class tree



hello world\n

I've read all the FAQs I could find, googled the web and news, searched
the gnome and gtk mailing list archives and finally decided to ask
those who should know :-)

Suppose you want to customize an app's appearance. In the Good Old Days
you could simply read the app's manual page and find out about its widget
tree, viz xman(1x):

[...]
WIDGETS
       In  order  to  specify resources, it is useful to know the hierarchy of
       the widgets which compose xman.  In  the  notation  below,  indentation
       indicates  hierarchical  structure.   The  widget  class  name is given
       first, followed by the widget instance name.

       Xman xman (This widget is never used)
            TopLevelShell  topBox
                 Form  form
                      Label  topLabel
                      Command  helpButton
                      Command  quitButton
                      Command  manpageButton
                 TransientShell  search
                      DialogWidgetClass  dialog
                           Label  label
                           Text  value
                           Command  manualPage
                           Command  apropos
                           Command  cancel
                 TransientShell  pleaseStandBy
[...]

If the man page was silent, you could ask the app with editres(1) and
dump or modify its resource tree, e.g. start gv (ghostview), editres,
ask for gv's tree and dump it to a file. You end up with

GV  gv
    VendorShellExt  shellext
    Aaa  control
        MButton  fileButton
            SimpleMenu  menu
                SmeBSB  open
                SmeBSB  reopen
                SmeBSB  update
                SmeLine  line
                SmeBSB  printAllPages
                SmeBSB  printMarkedPages
                SmeBSB  saveAllPages
                SmeBSB  saveMarkedPages
                SmeLine  line
                SmeBSB  copyright
                SmeLine  line
                SmeBSB  quit
[...]

Apparently newer toolkits don't support the underlying protocol. Gtk
gives me the .gtkrc file (among others) to customize styles. But how am
I supposed to know what I can put in there for a certain app?
Specifically I'm interested in the widget/class tree of mozilla 1.x. Is
there a more engineered way other than second guessing the hierarchy?

Happy New Year!

	Jens
-- 
Jens Schweikhardt http://www.schweikhardt.net/
SIGSIG -- signature too long (core dumped)



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]