Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XmScale(3X) — DG/UX 5.4.2A

Media Vault

Software Library

Restoration Projects

Artifacts Sought



     XmScale(3X)               UNIX System V               XmScale(3X)



     NAME
          XmScale-The Scale widget class

     SYNOPSIS
          #include <Xm/Scale.h>


     DESCRIPTION
          Scale is used by an application to indicate a value from
          within a range of values, and it allows the user to input or
          modify a value from the same range.

          A Scale has an elongated rectangular region similar to a
          ScrollBar.  A slider inside this region indicates the
          current value along the Scale.  The user can also modify the
          Scale's value by moving the slider within the rectangular
          region of the Scale.  A Scale can also include a label set
          located outside the Scale region.  These can indicate the
          relative value at various positions along the scale.

          A Scale can be either input/output or output only.  An
          input/output Scale's value can be set by the application and
          also modified by the user with the slider.  An output-only
          Scale is used strictly as an indicator of the current value
          of something and cannot be modified interactively by the
          user.  The Core resource XmNsensitive specifies whether the
          user can interactively modify the Scale's value.

          The user can specify resources in a resource file for the
          automatically created gadget that contains the title of the
          Scale widget.  The name of the gadget is "Title".

        Classes
          Scale inherits behavior and resources from Core, Composite,
          Constraint, and XmManager classes.

          The class pointer is xmScaleWidgetClass.

          The class name is XmScale.

        New Resources
          The following table defines a set of widget resources used
          by the programmer to specify data.  The programmer can also
          set the resource values for the inherited classes to set
          attributes for this widget.  To reference a resource by name
          or by class in a .Xdefaults file, remove the XmN or XmC
          prefix and use the remaining letters.  To specify one of the
          defined values for a resource in a .Xdefaults file, remove
          the Xm prefix and use the remaining letters (in either
          lowercase or uppercase, but include any underscores between
          words).  The codes in the access column indicate if the
          given resource can be set at creation time (C), set by using



     1                                                (printed 6/8/92)





     XmScale(3X)               UNIX System V               XmScale(3X)



          XtSetValues (S), retrieved by using XtGetValues (G), or is
          not applicable (N/A).

                                      XmScale Resource Set
     Name                      Class                    Type             Default      Access
     _______________________________________________________________________________________
     XmNdecimalPoints          XmCDecimalPoints         short            0            CSG
     XmNdragCallback           XmCCallback              XtCallbackList   NULL         C
     XmNfontList               XmCFontList              XmFontList       dynamic      CSG
     XmNhighlightOnEnter       XmCHighlightOnEnter      Boolean          False        CSG
     XmNhighlightThickness     XmCHighlightThickness    Dimension        2            CSG
     XmNmaximum                XmCMaximum               int              100          CSG
     XmNminimum                XmCMinimum               int              0            CSG
     XmNorientation            XmCOrientation           unsigned char    XmVERTICAL   CSG
     XmNprocessingDirection    XmCProcessingDirection   unsigned char    dynamic      CSG
     XmNscaleHeight            XmCScaleHeight           Dimension        0            CSG
     XmNscaleMultiple          XmCScaleMultiple         int              dynamic      CSG
     XmNscaleWidth             XmCScaleWidth            Dimension        0            CSG
     XmNshowValue              XmCShowValue             Boolean          False        CSG
     XmNtitleString            XmCTitleString           XmString         NULL         CSG
     XmNvalue                  XmCValue                 int              dynamic      CSG
     XmNvalueChangedCallback   XmCCallback              XtCallbackList   NULL         C


          XmNdecimalPoints
                    Specifies the number of decimal points to shift
                    the slider value when displaying it.  For example,
                    a slider value of 2,350 and an XmdecimalPoints
                    value of 2 results in a display value of 23.50.
                    The value must not be negative.

          XmNdragCallback
                    Specifies the list of callbacks that is called
                    when the slider position changes as the slider is
                    being dragged.  The reason sent by the callback is
                    XmCRDRAG.

          XmNfontList
                    Specifies the font list to use for the title text
                    string specified by XmNtitleString, and the label
                    displayed when XmNshowValue is True.  If this
                    value is NULL at initialization, the font list is
                    initialized by looking up the parent hierarchy of
                    the widget for an ancestor that is a subclass of
                    the XmBulletinBoard, VendorShell, or XmMenuShell
                    widget class.  If such an ancestor is found, the
                    font list is initialized to the XmNlabelFontList
                    of the ancestor widget.  If no such ancestor is
                    found, the default is implementation dependent.
                    Refer to XmFontList(3X) for more information on
                    the creation and structure of a font list.




     2                                                (printed 6/8/92)





     XmScale(3X)               UNIX System V               XmScale(3X)



          XmNhighlightOnEnter
                    Specifies whether the highlighting rectangle is
                    drawn when the cursor moves into the widget.  If
                    the shell's focus policy is XmEXPLICIT, this
                    resource is ignored, and the widget is highlighted
                    when it has the focus.  If the shell's focus
                    policy is XmPOINTER and if this resource is True,
                    the highlighting rectangle is drawn when the the
                    cursor moves into the widget.  If the shell's
                    focus policy is XmPOINTER and if this resource is
                    False, the highlighting rectangle is not drawn
                    when the the cursor moves into the widget.  The
                    default is False.

          XmNhighlightThickness
                    Specifies the size of the slider's border drawing
                    rectangle used for enter window and traversal
                    highlight drawing.

          XmNmaximum
                    Specifies the slider's maximum value.  XmNmaximum
                    must be greater than XmNminimum.

          XmNminimum
                    Specifies the slider's minimum value.  XmNmaximum
                    must be greater than XmNminimum.

          XmNorientation
                    Displays Scale vertically or horizontally.  This
                    resource can have values of XmVERTICAL and
                    XmHORIZONTAL.

          XmNprocessingDirection
                    Specifies whether the value for XmNmaximum is on
                    the right or left side of XmNminimum for
                    horizontal Scales or above or below XmNminimum for
                    vertical Scales.  This resource can have values of
                    XmMAXONTOP, XmMAXONBOTTOM,XmMAXONLEFT, and
                    XmMAXONRIGHT.  If the XmScale is oriented
                    vertically, the default value is XmMAXONTOP.  If
                    the XmScale is oriented horizontally, the default
                    value may depend on the value of the
                    XmNstringDirection resource.

          XmNscaleHeight
                    Specifies the height of the slider area.  The
                    value should be in the specified unit type (the
                    default is pixels).  If no value is specified a
                    default height is computed.

          XmNscaleMultiple
                    Specifies the amount to move the slider when the



     3                                                (printed 6/8/92)





     XmScale(3X)               UNIX System V               XmScale(3X)



                    user takes an action that moves the slider by a
                    multiple increment.  The default is (XmNmaximum -
                    XmNminimum) divided by 10, with a minimum of 1.

          XmNscaleWidth
                    Specifies the width of the slider area.  The value
                    should be in the specified unit type (the default
                    is pixels).  If no value is specified a default
                    width is computed.

          XmNshowValue
                    Specifies whether a label for the current slider
                    value should be displayed next to the slider.  If
                    the value is True, the current slider value is
                    displayed.

          XmNtitleString
                    Specifies the title text string to appear in the
                    Scale widget window.

          XmNvalue  Specifies the slider's current position along the
                    scale, between XmNminimum and XmNmaximum.  The
                    value is constrained to be within these inclusive
                    bounds.  The initial value of this resource is the
                    larger of 0 and XmNminimum.

          XmNvalueChangedCallback
                    Specifies the list of callbacks that is called
                    when the value of the slider has changed.  The
                    reason sent by the callback is XmCRVALUECHANGED.


        Inherited Resources
          Scale inherits behavior and resources from the following
          superclasses.  For a complete description of each resource,
          refer to the man page for that superclass.

                                          XmManager Resource Set
     Name                    Class                   Type                Default                Access
     _________________________________________________________________________________________________
     XmNbottomShadowColor    XmCBottomShadowColor    Pixel               dynamic                CSG
     XmNbottomShadowPixmap   XmCBottomShadowPixmap   Pixmap              XmUNSPECIFIED_PIXMAP   CSG
     XmNforeground           XmCForeground           Pixel               dynamic                CSG
     XmNhelpCallback         XmCCallback             XtCallbackList      NULL                   C
     XmNhighlightColor       XmCHighlightColor       Pixel               dynamic                CSG
     XmNhighlightPixmap      XmCHighlightPixmap      Pixmap              dynamic                CSG
     XmNinitialFocus         XmCInitialFocus         Widget              NULL                   CSG
     XmNnavigationType       XmCNavigationType       XmNavigationType    XmTAB_GROUP            CSG







     4                                                (printed 6/8/92)





     XmScale(3X)               UNIX System V               XmScale(3X)



     XmNshadowThickness      XmCShadowThickness      Dimension           2                      CSG
     XmNstringDirection      XmCStringDirection      XmStringDirection   dynamic                CG
     XmNtopShadowColor       XmCTopShadowColor       Pixel               dynamic                CSG
     XmNtopShadowPixmap      XmCTopShadowPixmap      Pixmap              dynamic                CSG
     XmNtraversalOn          XmCTraversalOn          Boolean             True                   CSG
     XmNunitType             XmCUnitType             unsigned char       dynamic                CSG
     XmNuserData             XmCUserData             XtPointer           NULL                   CSG

                             Composite Resource Set
     Name                Class               Type          Default   Access
     ______________________________________________________________________
     XmNchildren         XmCReadOnly         WidgetList    NULL      G
     XmNinsertPosition   XmCInsertPosition   XtOrderProc   NULL      CSG
     XmNnumChildren      XmCReadOnly         Cardinal      0         G

                                                   Core Resource Set
     Name                            Class                           Type             Default                Access
     ______________________________________________________________________________________________________________
     XmNaccelerators                 XmCAccelerators                 XtAccelerators   dynamic                CSG
     XmNancestorSensitive            XmCSensitive                    Boolean          dynamic                G
     XmNbackground                   XmCBackground                   Pixel            dynamic                CSG
     XmNbackgroundPixmap             XmCPixmap                       Pixmap           XmUNSPECIFIED_PIXMAP   CSG
     XmNborderColor                  XmCBorderColor                  Pixel            XtDefaultForeground    CSG
     XmNborderPixmap                 XmCPixmap                       Pixmap           XmUNSPECIFIED_PIXMAP   CSG
     XmNborderWidth                  XmCBorderWidth                  Dimension        0                      CSG
     XmNcolormap                     XmCColormap                     Colormap         dynamic                CG
     XmNdepth                        XmCDepth                        int              dynamic                CG
     XmNdestroyCallback              XmCCallback                     XtCallbackList   NULL                   C
     XmNheight                       XmCHeight                       Dimension        dynamic                CSG
     XmNinitialResourcesPersistent   XmCInitialResourcesPersistent   Boolean          True                   C
     XmNmappedWhenManaged            XmCMappedWhenManaged            Boolean          True                   CSG
     XmNscreen                       XmCScreen                       Screen *         dynamic                CG
     XmNsensitive                    XmCSensitive                    Boolean          True                   CSG
     XmNtranslations                 XmCTranslations                 XtTranslations   dynamic                CSG
     XmNwidth                        XmCWidth                        Dimension        dynamic                CSG
     XmNx                            XmCPosition                     Position         0                      CSG
     XmNy                            XmCPosition                     Position         0                      CSG

        Callback Information
          A pointer to the following structure is passed to each
          callback:

          typedef struct
          {
            int      reason;
            XEvent   * event;
            int      value;
          } XmScaleCallbackStruct;


          reason Indicates why the callback was invoked




     5                                                (printed 6/8/92)





     XmScale(3X)               UNIX System V               XmScale(3X)



          event  Points to the XEvent that triggered the callback

          value  Is the new slider value


        Behavior
          XmScale behavior is described below:


          BSelect Press or BDrag Press:
                    (in region between an end of the Scale and the
                    slider): Moves the slider by one multiple
                    increment in the direction of the end of the Scale
                    and calls the XmNvalueChangedCallback callbacks.
                    If XmNprocessingDirection is XmMAXONRIGHT or
                    XmMAXONBOTTOM, movement toward the right or
                    bottom increments the Scale value, and movement
                    toward the left or top decrements the Scale value.
                    If XmNprocessingDirection is XmMAXONLEFT or
                    XmMAXONTOP, movement toward the right or bottom
                    decrements the Scale value, and movement toward
                    the left or top increments the Scale value.  If
                    the button is held down longer than a delay
                    period, the slider is moved again by the same
                    increment and the same callbacks are called.

                    (in slider):  Activates the interactive dragging
                    of the slider.

          BSelect Motion or BDrag Motion:
                    If the button press occurs within the slider, the
                    subsequent motion events move the slider to the
                    position of the pointer and call the callbacks for
                    XmNdragCallback.

          BSelect Release or BDrag Release:
                    If the button press occurs within the slider and
                    the slider position is changed, the callbacks for
                    XmNvalueChangedCallback are called.

          MCtrl BSelect Press:
                    (in region between an end of the Scale and the
                    slider): Moves the slider to that end of the Scale
                    and calls the XmNvalueChangedCallback callbacks.
                    If XmNprocessingDirection is XmMAXONRIGHT or
                    XmMAXONBOTTOM, movement toward the right or
                    bottom increments the Scale value, and movement
                    toward the left or top decrements the Scale value.
                    If XmNprocessingDirection is XmMAXONLEFT or
                    XmMAXONTOP, movement toward the right or bottom
                    decrements the Scale value, and movement toward
                    the left or top increments the Scale value.



     6                                                (printed 6/8/92)





     XmScale(3X)               UNIX System V               XmScale(3X)



          KUp:      For vertical Scales, moves the slider up one
                    increment and calls the XmNvalueChangedCallback
                    callbacks.  If XmNprocessingDirection is
                    XmMAXONTOP, movement toward the top increments
                    the Scale value.  If XmNprocessingDirection is
                    XmMAXONBOTTOM, movement toward the top
                    decrements the Scale value.

          KDown:    For vertical Scales, moves the slider down one
                    increment and calls the XmNvalueChangedCallback
                    callbacks.  If XmNprocessingDirection is
                    XmMAXONBOTTOM, movement toward the bottom
                    increments the Scale value.  If
                    XmNprocessingDirection is XmMAXONTOP, movement
                    toward the bottom decrements the Scale value.

          KLeft:    For horizontal Scales, moves the slider one
                    increment to the left and calls the
                    XmNvalueChangedCallback callbacks.  If
                    XmNprocessingDirection is XmMAXONLEFT, movement
                    toward the left increments the Scale value.  If
                    XmNprocessingDirection is XmMAXONRIGHT, movement
                    toward the left decrements the Scale value.

          KRight:   For horizontal Scales, moves the slider one
                    increment to the right and calls the
                    XmNvalueChangedCallback callbacks.  If
                    XmNprocessingDirection is XmMAXONRIGHT, movement
                    toward the right increments the Scale value.  If
                    XmNprocessingDirection is XmMAXONLEFT, movement
                    toward the right decrements the Scale value.

          MCtrl KUp or KPageUp:
                    For vertical Scales, moves the slider up one
                    multiple increment and calls the
                    XmNvalueChangedCallback callbacks.  If
                    XmNprocessingDirection is XmMAXONTOP, movement
                    toward the top increments the Scale value.  If
                    XmNprocessingDirection is XmMAXONBOTTOM,
                    movement toward the top decrements the Scale
                    value.

          MCtrl KDown or KPageDown:
                    For vertical Scales, moves the slider down one
                    multiple increment and calls the
                    XmNvalueChangedCallback callbacks.  If
                    XmNprocessingDirection is XmMAXONBOTTOM,
                    movement toward the bottom increments the Scale
                    value.  If XmNprocessingDirection is XmMAXONTOP,
                    movement toward the bottom decrements the Scale
                    value.




     7                                                (printed 6/8/92)





     XmScale(3X)               UNIX System V               XmScale(3X)



          MCtrl KLeft or KPageLeft:
                    For horizontal Scales, moves the slider one
                    multiple increment to the left and calls the
                    XmNvalueChangedCallback callbacks.  If
                    XmNprocessingDirection is XmMAXONLEFT, movement
                    toward the left increments the Scale value.  If
                    XmNprocessingDirection is XmMAXONRIGHT, movement
                    toward the left decrements the Scale value.

          MCtrl KRight or KPageRight:
                    For horizontal Scales, moves the slider one
                    multiple increment to the right and calls the
                    XmNvalueChangedCallback callbacks.  If
                    XmNprocessingDirection is XmMAXONRIGHT, movement
                    toward the right increments the Scale value.  If
                    XmNprocessingDirection is XmMAXONLEFT, movement
                    toward the right decrements the Scale value.

          KBeginLine or KBeginData:
                    Moves the slider to the minimum value and calls
                    the XmNvalueChangedCallback callbacks.

          KEndLine or KEndData:
                    Moves the slider to the maximum value and calls
                    the XmNvalueChangedCallback callbacks.

          KNextField:
                    Traverses to the first item in the next tab group.
                    If the current tab group is the last entry in the
                    tab group list, it wraps to the beginning of the
                    tab group list.

          KPrevField:
                    Traverses to the first item in the previous tab
                    group.  If the beginning of the tab group list is
                    reached, it wraps to the end of the tab group
                    list.

          KHelp:    Calls the callbacks for XmNhelpCallback if any
                    exist.  If there are no help callbacks for this
                    widget, this action calls the help callbacks for
                    the nearest ancestor that has them.


        Virtual Bindings
          The bindings for virtual keys are vendor specific.  For
          information about bindings for virtual buttons and keys, see
          VirtualBindings(3X).

     RELATED INFORMATION
          Composite(3X), Constraint(3X), Core(3X), XmCreateScale(3X),
          XmManager(3X), XmScaleGetValue(3X), and XmScaleSetValue(3X).



     8                                                (printed 6/8/92)



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