Main Page | Namespace List | Class Hierarchy | Class List | File List | Class Members | File Members

src/aclvis/MainWindow.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 /***************************************************************************
00003  *
00004  * The IPPL Framework
00005  * 
00006  *
00007  * Visit http://people.web.psi.ch/adelmann/ for more details
00008  *
00009  ***************************************************************************/
00010 
00011 //
00012 // README: Portions of this file are merged at file generation
00013 // time. Edits can be made *only* in between specified code blocks, look
00014 // for keywords <Begin user code> and <End user code>.
00015 //
00017 //
00018 // Header file for MainWindow
00019 //
00020 //    Created by Builder Xcessory 4.0.
00021 //    Generated by Code Generator Xcessory 2.0 (09/09/96).
00022 //
00023 //    This class is a user interface "component", as described
00024 //    in "Object-Oriented Programming with C++ and OSF/Motif",
00025 //    by Douglas Young, Prentice Hall, 1992. ISBN 0-13-630252-1
00026 //
00028 #ifndef ACLVIS_MAIN_WINDOW_H
00029 #define ACLVIS_MAIN_WINDOW_H
00030 #include "UIComponent.h"
00031 
00032 //
00033 // Globally included information (change thru Output File Names Dialog).
00034 //
00035 
00036 
00037 //
00038 // Class Specific Includes (change thru the class in Resource Editor).
00039 //
00040 
00041 
00042 
00043 // Begin user code block <head>
00044 #define SliceIndex          1
00045 #define IsoIndex            2
00046 #define MIsoIndex           3
00047 #define PointIndex          4
00048 #define SphereIndex         5
00049 #define VectorFieldIndex    6
00050 #define VectorParticleIndex 7
00051 #define AxesIndex           8
00052 #define LineTraceIndex      9
00053 #include "aclvis/aclvis.h"
00054 // End user code block <head>
00055 
00056 class MainWindow : public UIComponent
00057 
00058 // Begin user code block <superclass>
00059 // End user code block <superclass>
00060 {
00061 
00062   public:
00063 
00064     MainWindow(const char *, Widget);
00065     MainWindow(const char *);
00066     virtual ~MainWindow();
00067     virtual void create(Widget);
00068     const char *  className();
00069     
00070     // Begin user code block <public>
00071     void AddDataItem(char *);
00072     void DeleteDataItem(char *);
00073     void AddToolItem(char *);
00074     void DeleteToolItem(char *);
00075     Widget GetDrawingAreaWidget() {
00076       return _drawingArea;
00077     }
00078     int SliceBBGetToggleType();
00079     void SliceBBToggleChanged(int);
00080     char *MakeTitleString(VizRecord *);
00081     void DisplayToolBB();
00082     void UpdateTools(void *caller);
00083     int  GetToolIndex(const char *toolname);
00084     bool CreateNewTool(const char *dataname, const char *toolname,
00085                        int numopts = 0, char *optvalues[] = 0);
00086 
00087     // End user code block <public>
00088   protected:
00089     // Classes created by this class
00090     
00091     // Widgets created by this class
00092     Widget _MainWindow;
00093     Widget _form;
00094     Widget _frame1;
00095     Widget _xmDialogShell;
00096     Widget _bulletinBoard;
00097     Widget _scratchTextField;
00098     Widget _misoBulletinBoard;
00099     Widget _misoNumContoursTextField;
00100     Widget _label13;
00101     Widget _misoContourRangeMaxTextField;
00102     Widget _label15;
00103     Widget _misoContourRangeMinTextField;
00104     Widget _label14;
00105     Widget _label16;
00106     Widget _misoColorRangeLabel;
00107     Widget _label12;
00108     Widget _misoTitleLabel;
00109     Widget _sliceBulletinBoard;
00110     Widget _sliceValueScale;
00111     Widget _sliceRadioBox;
00112     Widget _sliceXYToggleButton;
00113     Widget _sliceYZToggleButton;
00114     Widget _sliceXZToggleButton;
00115     Widget _sliceRangeLabel;
00116     Widget _label3;
00117     Widget _label10;
00118     Widget _sliceTitleLabel;
00119     Widget _sliceValueTextField;
00120     Widget _label6;
00121     Widget _sliceColorRangeLabel;
00122     Widget _isoBulletinBoard;
00123     Widget _isoTransparencyTextField;
00124     Widget _isoColorRangeLabel;
00125     Widget _label5;
00126     Widget _isoValueRangeLabel;
00127     Widget _label20;
00128     Widget _label19;
00129     Widget _isoTitleLabel;
00130     Widget _label17;
00131     Widget _isoIsoValueScale;
00132     Widget _isoValueTextField;
00133     Widget _pointBulletinBoard;
00134     Widget _pointColorRangeLabel;
00135     Widget _label7;
00136     Widget _pointValueRangeLabel;
00137     Widget _label9;
00138     Widget _pointTitleLabel;
00139     Widget _sphereBulletinBoard;
00140     Widget _sphereToolTraceNumberLabel;
00141     Widget _sphereTraceNumberTextField;
00142     Widget _label21;
00143     Widget _label18;
00144     Widget _sphereResTextField;
00145     Widget _sphereRadiusTextField;
00146     Widget _sphereColorRangeLabel;
00147     Widget _label11;
00148     Widget _sphereValueRangeLabel;
00149     Widget _label8;
00150     Widget _sphereTitleLabel;
00151     Widget _axesBulletinBoard;
00152     Widget _axesLabel3;
00153     Widget _axesLabel2;
00154     Widget _axesLabel1;
00155     Widget _axesTitleLabel;
00156     Widget _axesLenLabel;
00157     Widget _axesLenTextField;
00158     Widget _vectorFieldBulletinBoard;
00159     Widget _vectorFieldTubeFacetsTextField;
00160     Widget _vectorFieldTubeFacetsLabel;
00161     Widget _vectorFieldTubeRadiusTextField;
00162     Widget _vectorFieldTubeRadiusLabel;
00163     Widget _vectorParticleTubeVectorFlagToggleButton1;
00164     Widget _vectorFieldTitleLabel;
00165     Widget _vectorFieldScaleFactorLabel;
00166     Widget _vectorFieldScaleFactorTextField;
00167     Widget _vectorParticleBulletinBoard;
00168     Widget _vectorParticleTubeVectorFlagToggleButton;
00169     Widget _vectorParticleTubeFacetsTextField;
00170     Widget _vectorParticleTubeFacetsLabel;
00171     Widget _vectorParticleTubeRadiusTextField;
00172     Widget _vectorParticleTubeRadiusLabel;
00173     Widget _vectorParticleTraceNumberTextField;
00174     Widget _vectorParticleTraceNumberLabel;
00175     Widget _vectorParticleTitleLabel;
00176     Widget _vectorParticleScaleFactorLabel;
00177     Widget _vectorParticleScaleFactorTextField;
00178     Widget _particleLineTraceBulletinBoard;
00179     Widget _particleLineTraceTubeFlagToggleButton;
00180     Widget _particleLineToolTraceNumberLabel;
00181     Widget _particleLineTraceNumberTextField;
00182     Widget _particleLineTraceToolTubeResolutionLabel;
00183     Widget _particleLineTraceToolTubeRadiusLabel;
00184     Widget _particleLineTraceToolTubeResolutionTextField;
00185     Widget _particleLineTraceToolTubeRadiusTextField;
00186     Widget _particleLineTraceToolTitleLabel;
00187     Widget _menuBar;
00188     Widget _cascadeButton;
00189     Widget _pulldownMenu;
00190     Widget _pushButton4;
00191     Widget _goPushButton;
00192     Widget _stopPushButton;
00193     Widget _pushButton10;
00194     Widget _exitPushButton;
00195     Widget _cascadeButton1;
00196     Widget _pulldownMenu1;
00197     Widget _pushButton1;
00198     Widget _pushButton;
00199     Widget _deletePushButton1;
00200     Widget _drawingArea;
00201     Widget _selectToolDialogShell;
00202     Widget _selectDialogBulletinBoard;
00203     Widget _selectToolScrolledWindow;
00204     Widget _selectList;
00205     Widget _pushButton3;
00206     Widget _pushButton2;
00207     Widget _label2;
00208     Widget _newToolDialogShell;
00209     Widget _newDialogBulletinBoard;
00210     Widget _selectDataScrolledWindow;
00211     Widget _newDataList;
00212     Widget _selectToolTypeScrolledWindow;
00213     Widget _newToolTypeList;
00214     Widget _label1;
00215     Widget _label;
00216     Widget _pushButton8;
00217     Widget _pushButton7;
00218     Widget _deleteDialogShell;
00219     Widget _deleteDialogBulletinBoard;
00220     Widget _deleteListScrolledWindow;
00221     Widget _deleteList;
00222     Widget _pushButton9;
00223     Widget _pushButton6;
00224     Widget _label4;
00225     
00226     // These virtual functions are called from the private callbacks 
00227     // or event handlers intended to be overridden in derived classes
00228     // to define actions
00229     
00230     virtual void misoNumContoursTextFieldActivate(Widget, XtPointer, XtPointer);
00231     virtual void misoContourRangeMaxTextFieldActivate(Widget, XtPointer, XtPointer);
00232     virtual void misoContourRangeMinTextFieldActivate(Widget, XtPointer, XtPointer);
00233     virtual void sliceValueScaleChanged(Widget, XtPointer, XtPointer);
00234     virtual void sliceXYChanged(Widget, XtPointer, XtPointer);
00235     virtual void sliceYZchanged(Widget, XtPointer, XtPointer);
00236     virtual void sliceXZChanged(Widget, XtPointer, XtPointer);
00237     virtual void sliceValueTextFieldActivate(Widget, XtPointer, XtPointer);
00238     virtual void IsoTransparencyTextFieldActivate(Widget, XtPointer, XtPointer);
00239     virtual void isoValueScaleChangedCallback(Widget, XtPointer, XtPointer);
00240     virtual void IsoValueTextFieldActivate(Widget, XtPointer, XtPointer);
00241     virtual void sphereToolTraceNumTextFieldActivate(Widget, XtPointer, XtPointer);
00242     virtual void sphereResTextFieldActivate(Widget, XtPointer, XtPointer);
00243     virtual void sphereRadiusTextFieldActivate(Widget, XtPointer, XtPointer);
00244     virtual void axesLenTextFieldActivate(Widget, XtPointer, XtPointer);
00245     virtual void vectorFieldTubeFacetsTextFieldActivate(Widget, XtPointer, XtPointer);
00246     virtual void vectorFieldTubeRadiusTextFieldActivate(Widget, XtPointer, XtPointer);
00247     virtual void vectorFieldTubeVectorsFlagChanged(Widget, XtPointer, XtPointer);
00248     virtual void vectorFieldScaleFactorTextFieldActivate(Widget, XtPointer, XtPointer);
00249     virtual void vectorParticleTubeVectorsFlagChanged(Widget, XtPointer, XtPointer);
00250     virtual void vectorParticleTubeFacetsTextFieldActivate(Widget, XtPointer, XtPointer);
00251     virtual void vectorParticleTubeRadiusTextFieldActivate(Widget, XtPointer, XtPointer);
00252     virtual void vectorParticleTraceNumberTextFieldActivate(Widget, XtPointer, XtPointer);
00253     virtual void vectorParticleScaleFactorTextFieldActivate(Widget, XtPointer, XtPointer);
00254     virtual void particleLineTraceTubeFlagChangedActivateCallback(Widget, XtPointer, XtPointer);
00255     virtual void particleLineTraceNumTextFieldActivate(Widget, XtPointer, XtPointer);
00256     virtual void Step(Widget, XtPointer, XtPointer);
00257     virtual void Go(Widget, XtPointer, XtPointer);
00258     virtual void Stop(Widget, XtPointer, XtPointer);
00259     virtual void SaveImage(Widget, XtPointer, XtPointer);
00260     virtual void Exit(Widget, XtPointer, XtPointer);
00261     virtual void DialogNewCallback(Widget, XtPointer, XtPointer);
00262     virtual void SelectDialogCallback(Widget, XtPointer, XtPointer);
00263     virtual void DeleteDialogCallback(Widget, XtPointer, XtPointer);
00264     virtual void VTKRefresh(Widget, XtPointer, XtPointer);
00265     virtual void InteractExit(Widget, XtPointer, XtPointer);
00266     virtual void SelectSelectTool(Widget, XtPointer, XtPointer);
00267     virtual void SelectCancelCallback(Widget, XtPointer, XtPointer);
00268     virtual void SelectOKCallback(Widget, XtPointer, XtPointer);
00269     virtual void NewSelectDataObject(Widget, XtPointer, XtPointer);
00270     virtual void NewSelectToolType(Widget, XtPointer, XtPointer);
00271     virtual void NewCancelCallback(Widget, XtPointer, XtPointer);
00272     virtual void NewOKCallback(Widget, XtPointer, XtPointer);
00273     virtual void DeleteDeleteTool(Widget, XtPointer, XtPointer);
00274     virtual void DeleteCancelCallback(Widget, XtPointer, XtPointer);
00275     virtual void DeleteOKCallback(Widget, XtPointer, XtPointer);
00276     
00277     // Begin user code block <protected>
00278          virtual void add_item(Widget, XtPointer, XtPointer);
00279     virtual int select_item(Widget, XtPointer, XtPointer);
00280     virtual void delete_item(Widget, XtPointer, XtPointer);
00281     Widget _selectedBulletinBoard;
00282     // End user code block <protected>
00283   private: 
00284     
00285     //
00286     // Default application and class resources.
00287     //
00288     static String         _defaultMainWindowResources[];
00289     static UIAppDefault   _appDefaults[];
00290     static Boolean        _initAppDefaults;
00291     //
00292     // Callback client data.
00293     //
00294     UICallbackStruct  *_clientDataStructs;
00295     
00296     //
00297     // Callbacks to interface with Motif.
00298     //
00299     static void misoNumContoursTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00300     static void misoContourRangeMaxTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00301     static void misoContourRangeMinTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00302     static void sliceValueScaleChangedCallback(Widget, XtPointer, XtPointer);
00303     static void sliceXYChangedCallback(Widget, XtPointer, XtPointer);
00304     static void sliceYZchangedCallback(Widget, XtPointer, XtPointer);
00305     static void sliceXZChangedCallback(Widget, XtPointer, XtPointer);
00306     static void sliceValueTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00307     static void IsoTransparencyTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00308     static void isoValueScaleChangedCallbackCallback(Widget, XtPointer, XtPointer);
00309     static void IsoValueTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00310     static void sphereToolTraceNumTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00311     static void sphereResTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00312     static void sphereRadiusTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00313     static void axesLenTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00314     static void vectorFieldTubeFacetsTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00315     static void vectorFieldTubeRadiusTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00316     static void vectorFieldTubeVectorsFlagChangedCallback(Widget, XtPointer, XtPointer);
00317     static void vectorFieldScaleFactorTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00318     static void vectorParticleTubeVectorsFlagChangedCallback(Widget, XtPointer, XtPointer);
00319     static void vectorParticleTubeFacetsTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00320     static void vectorParticleTubeRadiusTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00321     static void vectorParticleTraceNumberTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00322     static void vectorParticleScaleFactorTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00323     static void particleLineTraceTubeFlagChangedActivateCallbackCallback(Widget, XtPointer, XtPointer);
00324     static void particleLineTraceNumTextFieldActivateCallback(Widget, XtPointer, XtPointer);
00325     static void StepCallback(Widget, XtPointer, XtPointer);
00326     static void GoCallback(Widget, XtPointer, XtPointer);
00327     static void StopCallback(Widget, XtPointer, XtPointer);
00328     static void SaveImageCallback(Widget, XtPointer, XtPointer);
00329     static void ExitCallback(Widget, XtPointer, XtPointer);
00330     static void DialogNewCallbackCallback(Widget, XtPointer, XtPointer);
00331     static void SelectDialogCallbackCallback(Widget, XtPointer, XtPointer);
00332     static void DeleteDialogCallbackCallback(Widget, XtPointer, XtPointer);
00333     static void VTKRefreshCallback(Widget, XtPointer, XtPointer);
00334     static void InteractExitCallback(Widget, XtPointer, XtPointer);
00335     static void SelectSelectToolCallback(Widget, XtPointer, XtPointer);
00336     static void SelectCancelCallbackCallback(Widget, XtPointer, XtPointer);
00337     static void SelectOKCallbackCallback(Widget, XtPointer, XtPointer);
00338     static void NewSelectDataObjectCallback(Widget, XtPointer, XtPointer);
00339     static void NewSelectToolTypeCallback(Widget, XtPointer, XtPointer);
00340     static void NewCancelCallbackCallback(Widget, XtPointer, XtPointer);
00341     static void NewOKCallbackCallback(Widget, XtPointer, XtPointer);
00342     static void DeleteDeleteToolCallback(Widget, XtPointer, XtPointer);
00343     static void DeleteCancelCallbackCallback(Widget, XtPointer, XtPointer);
00344     static void DeleteOKCallbackCallback(Widget, XtPointer, XtPointer);
00345     
00346     // Begin user code block <private>
00347          VizRecord *currentToolRecord;
00348     // End user code block <private>
00349 };
00350 
00351 // Begin user code block <tail>
00352 // End user code block <tail>
00353 #endif // ACLVIS_MAIN_WINDOW_H
00354 
00355 /***************************************************************************
00356  * $RCSfile: MainWindow.h,v $   $Author: adelmann $
00357  * $Revision: 1.1.1.1 $   $Date: 2003/01/23 07:40:34 $
00358  * IPPL_VERSION_ID: $Id: MainWindow.h,v 1.1.1.1 2003/01/23 07:40:34 adelmann Exp $ 
00359  ***************************************************************************/
00360 

Generated on Fri Nov 2 01:25:54 2007 for IPPL by doxygen 1.3.5