1 /***********************************************************************/ 2 /* Open Visualization Data Explorer */ 3 /* (C) Copyright IBM Corp. 1989,1999 */ 4 /* ALL RIGHTS RESERVED */ 5 /* This code licensed under the */ 6 /* "IBM PUBLIC LICENSE - Open Visualization Data Explorer" */ 7 /***********************************************************************/ 8 9 #include <dxconfig.h> 10 11 12 13 #ifndef _XmStepperP_h 14 #define _XmStepperP_h 15 16 #if (XmVersion >= 1002) 17 #include <Xm/PrimitiveP.h> 18 #include <Xm/ManagerP.h> 19 #endif 20 21 #include "NumberP.h" /* Define MultitypeData */ 22 23 #if defined(__cplusplus) || defined(c_plusplus) 24 extern "C" { 25 #endif 26 27 typedef struct _XmStepperClassPart { 28 Cardinal minimum_time_interval; 29 Cardinal initial_time_interval; 30 String font; 31 XtPointer extension; 32 } XmStepperClassPart; 33 34 typedef struct _XmStepperClassRec { 35 CoreClassPart core_class; 36 CompositeClassPart composite_class; /* Needed to have children */ 37 ConstraintClassPart constraint_class; /* Needed by manager */ 38 XmManagerClassPart manager_class; /* Needed to use gadgets */ 39 XmStepperClassPart stepper_class; 40 } XmStepperClassRec; 41 42 extern XmStepperClassRec XmstepperClassRec; 43 44 typedef struct _XmStepperPart { 45 /* Variables settable by SetValue calls */ 46 MultitypeData value; /* Current value */ 47 MultitypeData value_minimum; /* Minimum value */ 48 MultitypeData value_maximum; /* Maximum value */ 49 MultitypeData value_step; /* Value change per step */ 50 Boolean value_changed; /* Value changed since last callback */ 51 Cardinal num_digits; /* Size of Presentation */ 52 int decimal_places; /* Digits after point */ 53 Cardinal time_interval; /* Basic stepping rate */ 54 Cardinal time_ddelta; /* %rate increase/repeat */ 55 XtCallbackList activate_callback; /* Callback list (completed) */ 56 XtCallbackList step_callback; /* Callback list (increment) */ 57 XtCallbackList warning_callback; /* Callback list (warning) */ 58 unsigned char increase_direction; /* Orientation of arrows */ 59 Boolean center_text; /* Center Number Widget text */ 60 Boolean editable; /* Allow typed entry of value */ 61 Boolean roll_over; /* Range folds on self */ 62 Boolean resize_to_number; /* OK to resize if number grows */ 63 unsigned char alignment; 64 /* Variables for internal use only */ 65 int repeat_count; 66 unsigned long interval; 67 XtCallbackProc timeout_proc; 68 XtIntervalId timer; 69 Widget active_widget; /* Which arrow owns down button */ 70 Boolean allow_input; /* Don't step when editor busy */ 71 int inc_x; /* To set rate by location */ 72 int dec_x; 73 int arrow_width; 74 Widget child[3]; 75 short data_type; 76 Pixel insens_foreground; 77 Boolean is_fixed; 78 } XmStepperPart; 79 80 typedef struct _XmStepperRec { 81 CorePart core; 82 CompositePart composite; 83 ConstraintPart constraint; 84 XmManagerPart manager; 85 XmStepperPart stepper; 86 } XmStepperRec; 87 88 #if defined(__cplusplus) || defined(c_plusplus) 89 } 90 #endif 91 92 #endif 93