Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ () — MultiPersonal System R32V2

Media Vault

Software Library

Restoration Projects

Artifacts Sought



     XParseGeometry(3X)                        XParseGeometry(3X)



     NAME
          XParseGeometry, XGeometry, XParseColor - parse window
          geometry and color

     SYNOPSIS
          int XParseGeometry(parsestring, x_return, y_return,
          width_return, height_return)
                char *parsestring;
                int *x_return, *y_return;
                int *width_return, *height_return;

          int XGeometry(display, screen, position,
          default_position, bwidth, fwidth, fheight, xadder,
                            yadder, x_return, y_return,
          width_return, height_return)
                Display *display;
                int screen;
                char *position, *default_position;
                unsigned int bwidth;
                unsigned int fwidth, fheight;
                int xadder, yadder;
                int *x_return, *y_return;
                int *width_return, *height_return;

          Status XParseColor(display, colormap, spec,
          exact_def_return)
                  Display *display;
                  Colormap colormap;
                  char *spec;
                  XColor *exact_def_return;

     ARGUMENTS
          bwidth    Specifies the border width.

          colormap  Specifies the colormap.

          position
          default_position
                    Specify the geometry specifications.

          display   Specifies the connection to the X server.

          exact_def_return
                    Returns the exact color value for later use
                    and sets the DoRed, DoGreen, and DoBlue
                    flags.

          fheight
          fwidth    Specify the font height and width in pixels
                    (increment size).

          parsestring



                                - 1 -





     XParseGeometry(3X)                        XParseGeometry(3X)



                    Specifies the string you want to parse.

          screen    Specifies the screen.

          spec      Specifies the color name string; case is
                    ignored.

          width_return
          height_return
                    Return the width and height determined.

          xadder
          yadder    Specify additional interior padding needed in
                    the window.

          x_return
          y_return  Return the x and y offsets.

     DESCRIPTION
          By convention, X applications use a standard string to
          indicate window size and placement.  XParseGeometry
          makes it easier to conform to this standard because it
          allows you to parse the standard window geometry.
          Specifically, this function lets you parse strings of
          the form:

          [=][<width>x<height>][{+-}<xoffset>{+-}<yoffset>]

          The items in this form map into the arguments
          associated with this function.  (Items enclosed in <>
          are integers, items in [] are optional, and items
          enclosed in {} indicate ``choose one of''.  Note that
          the brackets should not appear in the actual string.)

          The XParseGeometry function returns a bitmask that
          indicates which of the four values (width, height,
          xoffset, and yoffset) were actually found in the string
          and whether the x and y values are negative. By
          convention, -0 is not equal to +0, because the user
          needs to be able to say ``position the window relative
          to the right or bottom edge.''  For each value found,
          the corresponding argument is updated.  For each value
          not found, the argument is left unchanged.  The bits
          are represented by XValue, YValue, WidthValue,
          HeightValue, XNegative, or YNegative and are defined in
          <X11/Xutil.h>.  They will be set whenever one of the
          values is defined or one of the signs is set.

          If the function returns either the XValue or YValue
          flag, you should place the window at the requested
          position.




                                - 2 -





     XParseGeometry(3X)                        XParseGeometry(3X)



          You pass in the border width (bwidth), size of the
          increments fwidth and fheight (typically font width and
          height), and any additional interior space (xadder and
          yadder) to make it easy to compute the resulting size.
          The XGeometry function returns the position the window
          should be placed given a position and a default
          position.  XGeometry determines the placement of a
          window using a geometry specification as specified by
          XParseGeometry and the additional information about the
          window.  Given a fully qualified default geometry
          specification and an incomplete geometry specification,
          XParseGeometry returns a bitmask value as defined above
          in the XParseGeometry call, by using the position
          argument.

          The returned width and height will be the width and
          height specified by default_position as overridden by
          any user-specified position.  They are not affected by
          fwidth, fheight, xadder, or yadder.  The x and y
          coordinates are computed by using the border width, the
          screen width and height, padding as specified by xadder
          and yadder, and the fheight and fwidth times the width
          and height from the geometry specifications.

          The XParseColor function provides a simple way to
          create a standard user interface to color.  It takes a
          string specification of a color, typically from a
          command line or XGetDefault option, and returns the
          corresponding red, green, and blue values that are
          suitable for a subsequent call to XAllocColor or
          XStoreColor.  The color can be specified either as a
          color name (as in XAllocNamedColor) or as an initial
          sharp sign character followed by a numeric
          specification, in one of the following formats:

          (Reg.)                        #RGB(4 bits each)
               #RRGGBB                  (8 bits each)
               #RRRGGGBBB               (12 bits each)
               #RRRRGGGGBBBB            (16 bits each)

          The R, G, and B represent single hexadecimal digits
          (both uppercase and lowercase).  When fewer than 16
          bits each are specified, they represent the most-
          significant bits of the value.  For example, #3a7 is
          the same as #3000a0007000.  The colormap is used only
          to determine which screen to look up the color on.  For
          example, you can use the screen's default colormap.

          If the initial character is a sharp sign but the string
          otherwise fails to fit the above formats or if the
          initial character is not a sharp sign and the named
          color does not exist in the server's database,



                                - 3 -





     XParseGeometry(3X)                        XParseGeometry(3X)



          XParseColor fails and returns zero.

          XParseColor can generate a BadColor error.

     DIAGNOSTICS
          BadColor  A value for a Colormap argument does not name
                    a defined Colormap.

     SEE ALSO
          Xlib Programming Manual













































                                - 4 -



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026