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 _XmColorMapEditorP_H 14 #define _XmColorMapEditorP_H 15 16 #include <X11/StringDefs.h> 17 #include <X11/IntrinsicP.h> 18 #include <X11/Intrinsic.h> 19 #include <X11/CoreP.h> 20 #include <X11/CompositeP.h> 21 #include <X11/Composite.h> 22 #include <X11/Constraint.h> 23 #include <Xm/BulletinBP.h> 24 #include <Xm/FormP.h> 25 #include <Xm/Form.h> 26 #include "Stepper.h" 27 #include "ControlField.h" 28 #include "ColorMapEditor.h" 29 #include <Xm/XmP.h> 30 #include "Color.h" 31 32 #define NUM_LEVELS 225 33 34 /* New fields for the ColorMapEditor widget class record */ 35 36 typedef struct _XmColorMapEditorClassPart 37 { 38 ControlPoint *cut_points; 39 int num_cut_points; 40 ControlColor* color; 41 XtPointer extension; 42 } XmColorMapEditorClassPart; 43 44 45 /* Full class record declaration */ 46 47 typedef struct _XmColorMapEditorClassRec 48 { 49 CoreClassPart core_class; 50 CompositeClassPart composite_class; 51 ConstraintClassPart constraint_class; 52 XmManagerClassPart manager_class; 53 XmBulletinBoardClassPart bulletin_board_class; 54 XmFormClassPart form_class; 55 XmColorMapEditorClassPart color_map_editor_class; 56 } XmColorMapEditorClassRec; 57 58 extern XmColorMapEditorClassRec xmColorMapEditorClassRec; 59 60 typedef struct _XmColorMapEditorPart 61 { 62 double value_minimum; 63 double value_maximum; 64 double value_current; 65 Boolean min_editable; 66 Boolean max_editable; 67 XtPointer user_data; 68 String default_colormap; 69 struct groupRec 70 { 71 ControlField* field[4]; 72 ControlColor* color; 73 ColorBar *colorbar; 74 ControlField* rgb; 75 Widget open_filesb, save_filesb; /* file selection widgets */ 76 XtCallbackProc activate_callback; 77 }g; 78 Widget controlpointdialog; 79 XmStepperWidget stepper; 80 XmNumberWidget min_num, max_num; /* Min and max data values */ 81 char *save_filename; 82 char *open_filename; 83 Boolean add_hue_cp; /* Flags used in Set Values */ 84 Boolean add_sat_cp; 85 Boolean add_val_cp; 86 Boolean add_op_cp; 87 Boolean constrain_vert; 88 Boolean constrain_hor; 89 Boolean trigger_callback; 90 Boolean display_opacity; 91 int color_bar_background_style; 92 Widget label[30]; 93 Cursor field_cursor_id; 94 int draw_mode; 95 int *bins; 96 int *log_bins; 97 int num_bins; 98 Widget grid_w; 99 Pixmap grid_pixmap; 100 XFontStruct *font; 101 GC fontgc; 102 Boolean first_grid_expose; 103 int print_points; 104 } XmColorMapEditorPart; 105 106 typedef struct _XmColorMapEditorRec 107 { 108 CorePart core; 109 CompositePart composite; 110 ConstraintPart constraint; 111 XmManagerPart manager; 112 XmBulletinBoardPart bulletin_board; 113 XmFormPart form; 114 XmColorMapEditorPart color_map_editor; 115 } XmColorMapEditorRec; 116 117 #endif 118