424
+ − 1 /* Gauge Widget for XEmacs.
+ − 2 Copyright (C) 1999 Edward A. Falk
+ − 3
+ − 4 This file is part of XEmacs.
+ − 5
+ − 6 XEmacs is free software; you can redistribute it and/or modify it
+ − 7 under the terms of the GNU General Public License as published by the
+ − 8 Free Software Foundation; either version 2, or (at your option) any
+ − 9 later version.
+ − 10
+ − 11 XEmacs is distributed in the hope that it will be useful, but WITHOUT
+ − 12 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ − 13 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ − 14 for more details.
+ − 15
+ − 16 You should have received a copy of the GNU General Public License
+ − 17 along with XEmacs; see the file COPYING. If not, write to
+ − 18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ − 19 Boston, MA 02111-1307, USA. */
+ − 20
+ − 21 /* Synched up with: Gauge.h 1.1 */
+ − 22
+ − 23 /*
+ − 24 * Gauge.h - Gauge widget
+ − 25 *
+ − 26 * Author: Edward A. Falk
+ − 27 * falk@falconer.vip.best.com
442
+ − 28 *
424
+ − 29 * Date: July 8, 1997
+ − 30 */
+ − 31
+ − 32 #ifndef _XawGauge_h
+ − 33 #define _XawGauge_h
+ − 34
+ − 35 /***********************************************************************
+ − 36 *
+ − 37 * Gauge Widget
+ − 38 *
+ − 39 * The Gauge widget looks something like a thermometer. Application
+ − 40 * defines the values at the ends of the range and the current value
+ − 41 * and Gauge draws accordingly. Gauge does not accept input.
+ − 42 *
+ − 43 ***********************************************************************/
+ − 44
442
+ − 45 #include ATHENA_Label_h_
424
+ − 46
+ − 47 /* Resources:
+ − 48
+ − 49 Name Class RepType Default Value
+ − 50 ---- ----- ------- -------------
+ − 51 value Value Cardinal 0
+ − 52 minValue MinValue Cardinal 0
+ − 53 maxValue MaxValue Cardinal 100
+ − 54 ntics NTics Cardinal 0 +
+ − 55 nlabels NLabels Cardinal 0 ++
+ − 56 labels Labels String * NULL +++
+ − 57 orientation Orientation XtOrientation horizontal
+ − 58 autoScaleUp AutoScaleUp Boolean FALSE ++++
+ − 59 autoScaleDown AutoScaleDown Boolean FALSE ++++
+ − 60 getValue Callback XtCallbackList NULL +++++
+ − 61 update Interval int 0 (seconds) = disabled
+ − 62
+ − 63 encoding Encoding unsigned char XawTextEncoding8bit
+ − 64 font Font XFontStruct* XtDefaultFont
+ − 65 foreground Foreground Pixel XtDefaultForeground
+ − 66 internalHeight Height Dimension 2
+ − 67 internalWidth Width Dimension 4
+ − 68 resize Resize Boolean True
+ − 69 background Background Pixel XtDefaultBackground
+ − 70 bitmap Pixmap Pixmap None
+ − 71 border BorderColor Pixel XtDefaultForeground
+ − 72 borderWidth BorderWidth Dimension 1
+ − 73 cursor Cursor Cursor None
+ − 74 cursorName Cursor String NULL
+ − 75 destroyCallback Callback XtCallbackList NULL
+ − 76 height Height Dimension varies
+ − 77 insensitiveBorder Insensitive Pixmap Gray
+ − 78 mappedWhenManaged MappedWhenManaged Boolean True
+ − 79 pointerColor Foreground Pixel XtDefaultForeground
+ − 80 pointerColorBackground Background Pixel XtDefaultBackground
+ − 81 sensitive Sensitive Boolean True
+ − 82 width Width Dimension text width
+ − 83 x Position Position 0
+ − 84 y Position Position 0
+ − 85
+ − 86 + Ntics sets the number of tic marks next to the gauge. If 0, no
+ − 87 tic marks will be drawn.
+ − 88 ++ Nlabels sets the number of labels next to the gauge.
+ − 89 +++ Labels is an array of nul-terminated strings to be used as labels.
+ − 90 If this field is NULL but nlabels is > 0, then numeric labels will be
+ − 91 provided. NOTE: the labels are not copied to any internal memory; they
442
+ − 92 must be stored in static memory provided by the application.
424
+ − 93 ++++ AutoScale allows the gauge to set its own value limits. Default is
+ − 94 False unless upper & lower limits are both 0.
+ − 95
+ − 96 +++++ The GetValue() callback proc is called with these arguments:
+ − 97 static void
+ − 98 myGetValue(gauge, client, rval)
+ − 99 Widget gauge ;
+ − 100 XtPointer client ;
+ − 101 XtPointer rval ;
+ − 102 {
+ − 103 *(Cardinal *)rval = value ;
+ − 104 }
442
+ − 105
424
+ − 106 */
+ − 107
+ − 108 /*
+ − 109 * Resource names not provided in StringDefs.h
+ − 110 */
+ − 111
+ − 112 #ifndef XtNvalue
+ − 113 #define XtNvalue "value"
+ − 114 #define XtCValue "Value"
+ − 115 #endif
+ − 116
+ − 117 #ifndef XtNorientation
+ − 118 #define XtNorientation "orientation"
+ − 119 #define XtCOrientation "Orientation"
+ − 120 #endif
+ − 121
+ − 122 #define XtNntics "ntics"
+ − 123 #define XtCNTics "NTics"
+ − 124
+ − 125 #ifndef XtNnlabels
+ − 126 #define XtNnlabels "nlabels"
+ − 127 #define XtCNLabels "NLabels"
+ − 128 #endif
+ − 129 #ifndef XtNlabels
+ − 130 #define XtNlabels "labels"
+ − 131 #define XtCLabels "Labels"
+ − 132 #endif
+ − 133
+ − 134 #ifndef XtNminValue
+ − 135 #define XtNminValue "minValue"
+ − 136 #define XtCMinValue "MinValue"
+ − 137 #endif
+ − 138 #ifndef XtNmaxValue
+ − 139 #define XtNmaxValue "maxValue"
+ − 140 #define XtCMaxValue "MaxValue"
+ − 141 #endif
+ − 142
+ − 143 #ifndef XtNautoScaleUp
+ − 144 #define XtNautoScaleUp "autoScaleUp"
+ − 145 #define XtCAutoScaleUp "AutoScaleUp"
+ − 146 #define XtNautoScaleDown "autoScaleDown"
+ − 147 #define XtCAutoScaleDown "AutoScaleDown"
+ − 148 #endif
+ − 149
+ − 150 #ifndef XtNupdate
+ − 151 #define XtNupdate "update"
+ − 152 #endif
+ − 153
+ − 154 #ifndef XtNgetValue
+ − 155 #define XtNgetValue "getValue"
+ − 156 #endif
+ − 157
+ − 158
+ − 159 /* Class record constants */
+ − 160
+ − 161 extern WidgetClass gaugeWidgetClass;
+ − 162
+ − 163 typedef struct _GaugeClassRec *GaugeWidgetClass;
+ − 164 typedef struct _GaugeRec *GaugeWidget;
+ − 165
+ − 166
+ − 167 _XFUNCPROTOBEGIN
+ − 168
+ − 169 extern void XawGaugeSetValue(
+ − 170 #if NeedFunctionPrototypes
+ − 171 Widget gauge,
+ − 172 Cardinal value
+ − 173 #endif
+ − 174 );
+ − 175
+ − 176 extern Cardinal XawGaugeGetValue(
+ − 177 #if NeedFunctionPrototypes
+ − 178 Widget gauge
+ − 179 #endif
+ − 180 );
+ − 181
+ − 182 _XFUNCPROTOEND
+ − 183
+ − 184 #endif /* _XawGauge_h */