dwww Home | Manual pages | Find package

EDITRES(1)                  General Commands Manual                  EDITRES(1)

NAME
       editres - a dynamic resource editor for X Toolkit applications

SYNTAX
       editres [ -toolkitoption ... ] [-help] [-version]

OPTIONS
       Editres  accepts all of the standard X Toolkit command line options (see
       X(7)).  The order of the command line options is not important.

       Editres also accepts the following additional options:

       -help       Prints a usage message and exits.

       -version    Prints version info and exits.

DESCRIPTION
       Editres is a tool that allows users and application developers  to  view
       the  full  widget hierarchy of any X Toolkit application that speaks the
       Editres protocol.  In addition, editres will help the user construct re-
       source specifications, allow the user to apply the resource to  the  ap-
       plication and view the results dynamically.  Once the user is happy with
       a  resource specification editres will append the resource string to the
       user's X Resources file.

USING EDITRES
       Editres provides a window consisting of the following four areas:

       Menu Bar                 A set of popup menus that allow you full access
                                to editres's features.

       Panner                   The panner  allows  a  more  intuitive  way  to
                                scroll the application tree display.

       Message Area             Displays  information to the user about the ac-
                                tion that editres expects of her.

       Application Widget Tree  This area will be used to display the  selected
                                application's widget tree.

       To  begin  an  editres session select the Get Widget Tree menu item from
       the command menu.  This will change the pointer cursor  to  cross  hair.
       You  should  now  select the application you wish look at by clicking on
       any of its windows.  If this application understands the editres  proto-
       col  then editres will display the application's widget tree in its tree
       window.  If the application does not understand the editres protocol ed-
       itres will inform you of this fact in the message area after a few  sec-
       onds delay.

       Once you have a widget tree you may now select any of the other menu op-
       tions. The effect of each of these is described below.

COMMANDS
       Get Widget Tree
               Allows  the user to click on any application that speaks the ed-
               itres protocol and receive its widget tree.

       Refresh Current Widget Tree
               Editres only knows about the widgets that exist at  the  present
               time.   Many applications create and destroy widgets on the fly.
               Selecting this menu item will cause editres to ask the  applica-
               tion to resend its widget tree, thus updating its information to
               the new state of the application.

               For  example,  xman only creates the widgets for its topbox when
               it starts up.  None of the widgets for the  manual  page  window
               are  created  until  the user actually clicks on the Manual Page
               button.  If you retrieved xman's widget tree before the the man-
               ual page is active, you may wish to refresh the widget tree  af-
               ter  the manual page has been displayed.  This will allow you to
               also edit the manual page's resources.

       Dump Widget Tree to a File
               For documenting applications it is often useful to  be  able  to
               dump  the entire application widget tree to an ASCII file.  This
               file can then be included in the manual page.   When  this  menu
               item  is selected a popup dialog is activated.  Type the name of
               the file in this dialog, and either select okay, or type a  car-
               riage-return.   Editres  will  now  dump the widget tree to this
               file.  To cancel the file dialog, select the cancel button.

       Show Resource Box
               This command will popup a resource box for the current  applica-
               tion.   This resource box (described in detail below) will allow
               the user to see exactly which resources can be set for the  wid-
               get that is currently selected in the widget tree display.  Only
               one  widget  may  be currently selected; if greater or fewer are
               selected editres will refuse to pop up the resource box and  put
               an error message in the Message Area.

       Set Resource
               This command will popup a simple dialog box for setting an arbi-
               trary  resource  on  all selected widgets.  You must type in the
               resource name, as well as the value.  You can use the Tab key to
               switch between the resource name field the resource value field.

       Quit    Exits editres.

TREE COMMANDS
       The Tree menu contains several commands that allow operations to be per-
       formed on the widget tree.

       Select Widget in Client
              This menu item allows you to select any widget  in  the  applica-
              tion;  editres  will then highlight the corresponding element the
              widget tree display.  Once this menu item is selected the pointer
              cursor will again turn to a crosshair, and  you  must  click  any
              pointer  button  in the widget you wish to have displayed.  Since
              some widgets are fully obscured by their children, it is not pos-
              sible to get to every widget this way, but  this  mechanism  does
              give very useful feedback between the elements in the widget tree
              and those in the actual application.

       Select All

       Unselect All

       Invert All
              These functions allow the user to select, unselect, or invert all
              widgets in the widget tree.

       Select Children

       Select Parents
              These  functions  select the immediate parent or children of each
              of the currently selected widgets.

       Select Descendants

       Select Ancestors
              These functions select all parents or children  of  each  of  the
              currently selected widgets.  This is a recursive search.

       Show Widget Names

       Show Class Names

       Show Widget IDs

       Show Widget Windows
              When  the  tree  widget is initially displayed the labels of each
              widget in the tree correspond to the widget names.   These  func-
              tions  will  cause  the  label  of  all widgets in the tree to be
              changed to show the class name, IDs, or  window  associated  with
              each  widget in the application.  The widget IDs, and windows are
              shown as hex numbers.

       In addition there are keyboard accelerators for each of the Tree  opera-
       tions.   If  the  input  focus is over an individual widget in the tree,
       then that operation will only effect that widget.  If the input focus is
       in the Tree background it will have exactly the same effect as the  cor-
       responding menu item.

       The translation entries shown may be applied to any widget in the appli-
       cation.  If that widget is a child of the Tree widget, then it will only
       affect  that  widget, otherwise it will have the same effect as the com-
       mands in the tree menu.

       Flash Active Widgets
              This command is the inverse of the Select Widget in  Client  com-
              mand,  it  will  show  the user each widget that is currently se-
              lected in the widget tree, by flashing the  corresponding  widget
              in  the  application  numFlashes  (three by default) times in the
              flashColor.

              Key     Option                     Translation Entry
              -
              space   Unselect                   Select(nothing)
              w       Select                     Select(widget)
              s       Select                     Select(all)
              i       Invert                     Select(invert)
              c       Select Children            Select(children)
              d       Select Descendants         Select(descendants)
              p       Select Parent              Select(parent)
              a       Select Ancestors           Select(ancestors)
              N       Show Widget Names          Relabel(name)
              C       Show Class Names           Relabel(class)
              I       Show Widget IDs            Relabel(id)
              W       Show Widget Windows        Relabel(window)
              T       Toggle Widget/Class Name   Relabel(toggle)

              Clicking button 1 on a widget adds it to the set of selected wid-
              gets.  Clicking button 2 on a widget deselects all other  widgets
              and then selects just that widget.  Clicking button 3 on a widget
              toggles its label between the widget's instance name the widget's
              class name.

USING THE RESOURCE BOX
       The  resource  box contains five different areas.  Each of the areas, as
       they appear on the screen, from top to bottom will be discussed.

       The Resource Line
              This area at the top of the resource box shows  the  current  re-
              source  name exactly as it would appear if you were to save it to
              a file or apply it.

       The Widget Names and Classes
              This area allows you to select exactly  which  widgets  this  re-
              source  will  apply  to.  The area contains four lines, the first
              contains the name of the selected widget and all  its  ancestors,
              and the more restrictive dot (.) separator.  The second line con-
              tains  less  specific the Class names of each widget, and well as
              the less restrictive star (*) separator.  The third line contains
              a set of special buttons called Any Widget which will  generalize
              this  level to match any widget.  The last line contains a set of
              special buttons called Any Widget Chain which will turn the  sin-
              gle level into something that matches zero or more levels.

              The initial state of this area is the most restrictive, using the
              resource  names  and  the  dot separator.  By selecting the other
              buttons in this area you can ease the restrictions to allow  more
              and more widgets to match the specification.  The extreme case is
              to  select  all  the  Any  Widget Chain buttons, which will match
              every widget in the application.   As you select  different  but-
              tons  the tree display will update to show you exactly which wid-
              gets will be effected by the current resource specification.

       Normal and Constraint Resources
              The next area allows you to select the name of the normal or con-
              straint resources you wish to set.  Some  widgets  may  not  have
              constraint resources, so that area will not appear.

       Resource Value
              This  next  area  allows  you  to enter the resource value.  This
              value should be entered exactly as you would  type  a  line  into
              your  resource  file.   Thus  it should contain no unescaped new-
              lines.  There are a few  special  character  sequences  for  this
              file:

              \n - This will be replaced with a newline.

              \###  - Where # is any octal digit.  This will be replaced with a
              single byte that contains this sequence interpreted as  an  octal
              number.   For  example,  a  value  containing  a NULL byte can be
              stored by specifying \000.

              \<new-line> - This will compress to nothing.

              \\ - This will compress to a single backslash.

       Command Area
              This area contains several command  buttons,  described  in  this
              section.

       Set Save File
              This  button  allows  the  user to modify file that the resources
              will be saved to.  This button will bring up a  dialog  box  that
              will  ask you for a filename; once the filename has been entered,
              either hit carriage-return or click on the okay button.   To  pop
              down  the  dialog  box  without changing the save file, click the
              cancel button.

       Save   This button will append the resource line described above to  the
              end  of  the current save file.  If no save file has been set the
              Set Save File dialog box will be popped up to prompt the user for
              a filename.

       Apply  This button attempts to perform a XtSetValues call on all widgets
              that match the resource line described above.  The  value  speci-
              fied  is applied directly to all matching widgets.  This behavior
              is an attempt to give a dynamic  feel  to  the  resource  editor.
              Since  this  feature allows users to put an application in states
              it may not be willing to handle, a hook has been provided to  al-
              low  specific applications to block these SetValues requests (see
              Blocking Editres Requests below).

              Unfortunately due to design constraints imposed on the widgets by
              the X Toolkit and the Resource Manager, trying to coerce  an  in-
              herently  static  system  into dynamic behavior can cause strange
              results.  There is no guarantee that the results of an apply will
              be the same as what will happen  when  you  save  the  value  and
              restart  the  application.  This functionality is provided to try
              to give you a rough feel for what your changes  will  accomplish,
              and  the  results  obtained should be considered suspect at best.
              Having said that, this is one of the neatest features of editres,
              and I strongly suggest that you play with it, and see what it can
              do.

       Save and Apply
              This button combines the Save and Apply actions  described  above
              into one button.

       Popdown Resource Box
              This button will remove the resource box from the display.

BLOCKING EDITRES REQUESTS
       The  editres  protocol  has been built into the Athena Widget set.  This
       allows all applications that are linked against Xaw to be able to  speak
       to the resource editor.  While this provides great flexibility, and is a
       useful  tool,  it  can quite easily be abused.  It is therefore possible
       for any Xaw application to specify a value for the editresBlock resource
       described below, to keep editres from divulging  information  about  its
       internals, or to disable the SetValues part of the protocol.

       editresBlock (Class EditresBlock)
               Specifies  which type of blocking this application wishes to im-
               pose on the editres protocol.

       The accepted values are:

       all            Block all requests.

       setValues      Block all SetValues requests.  As this is  the  only  ed-
                      itres  request  that  actually  modifies the application,
                      this is in effect stating that the application  is  read-
                      only.

       none           Allow all editres requests.

       Remember  that  these  resources are set on any Xaw application, not ed-
       itres.  They allow individual applications to keep all or  some  of  the
       requests editres makes from ever succeeding.  Of course, editres is also
       an  Xaw  application,  so  it may also be viewed and modified by editres
       (rather recursive, I know), these commands can be blocked by setting the
       editresBlock resource on editres itself.

RESOURCES
       For editres the available application resources are:

       numFlashes (Class NumFlashes)
               Specifies the number of times the  widgets  in  the  application
               will be flashed when the Show Active Widgets command in invoked.

       flashTime (Class FlashTime)
               Amount of time between the flashes described above.

       flashColor (Class flashColor)
               Specifies the color used to flash application widgets.  A bright
               color  should  be used that will immediately draw your attention
               to the area being flashed, such as red or yellow.

       saveResourcesFile (Class SaveResourcesFile)
               This is the file the resource line will be append  to  when  the
               Save button activated in the resource box.

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

       Editres  editres
            Paned  paned
                 Box  box
                      MenuButton  commands
                           SimpleMenu  menu
                                SmeBSB  sendTree
                                SmeBSB  refreshTree
                                SmeBSB  dumpTreeToFile
                                SmeLine  line
                                SmeBSB  getResourceList
                                SmeLine  line
                                SmeBSB  quit
                      MenuButton  treeCommands
                           SimpleMenu  menu
                                SmeBSB  showClientWidget
                                SmeBSB  selectAll
                                SmeBSB  unselectAll
                                SmeBSB  invertAll
                                SmeLine  line
                                SmeBSB  selectChildren
                                SmeBSB  selectParent
                                SmeBSB  selectDescendants
                                SmeBSB  selectAncestors
                                SmeLine  line
                                SmeBSB  showWidgetNames
                                SmeBSB  showClassNames
                                SmeBSB  showWidgetIDs
                                SmeBSB  showWidgetWindows
                                SmeLine  line
                                SmeBSB  flashActiveWidgets
                 Paned  hPane
                      Panner  panner
                      Label  userMessage
                      Grip  grip
                 Porthole  porthole
                      Tree  tree
                           Toggle  <name of widget in application>
                                .
                                .
                                .
                                TransientShell  resourceBox
                                     Paned  pane
                                          Label  resourceLabel
                                          Form  namesAndClasses
                                               Toggle  dot
                                               Toggle  star
                                               Toggle  any
                                               Toggle  name
                                               Toggle  class
                                                    .
                                                    .
                                                    .
                                          Label  namesLabel
                                          List  namesList
                                          Label  constraintLabel
                                          List  constraintList
                                          Form  valueForm
                                               Label  valueLabel
                                               Text  valueText
                                          Box  commandBox
                                               Command  setFile
                                               Command  save
                                               Command  apply
                                               Command  saveAndApply
                                               Command  cancel
                                          Grip  grip
                 Grip  grip

ENVIRONMENT
       DISPLAY to get the default host and display number.

       XENVIRONMENT
               to get the name of a resource file that overrides the global re-
               sources stored in the RESOURCE_MANAGER property.

FILES
       /etc/X11/app-defaults/Editres
              specifies required resources

SEE ALSO
       X(7), xrdb(1), Athena Widget Set

RESTRICTIONS
       This is a prototype, there are lots of nifty features I  would  love  to
       add, but I hope this will give you some ideas about what a resource edi-
       tor can do.

AUTHOR
       Chris D. Peterson, formerly MIT X Consortium

X Version 11                     editres 1.0.9                       EDITRES(1)

Generated by dwww version 1.16 on Sat Oct 3 06:25:31 CEST 2026.