vtkKWMimxApplicationSettingsInterface.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003 Program:   MIMX Meshing Toolkit
00004 Module:    $RCSfile: vtkKWMimxApplicationSettingsInterface.h,v $
00005 Language:  C++
00006 Date:      $Date: 2008/10/17 03:37:39 $
00007 Version:   $Revision: 1.3.4.1 $
00008 
00009  Musculoskeletal Imaging, Modelling and Experimentation (MIMX)
00010  Center for Computer Aided Design
00011  The University of Iowa
00012  Iowa City, IA 52242
00013  http://www.ccad.uiowa.edu/mimx/
00014  
00015 Copyright (c) The University of Iowa. All rights reserved.
00016 See MIMXCopyright.txt or http://www.ccad.uiowa.edu/mimx/Copyright.htm for details.
00017 
00018 This software is distributed WITHOUT ANY WARRANTY; without even 
00019 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
00020 PURPOSE.  See the above copyright notices for more information.
00021 
00022 =========================================================================*/
00023 // .NAME vtkKWMimxApplicationSettingsInterface
00024 // .SECTION Description
00025 // Slicer specific ApplicationSettingsInterface. Provides a user
00026 // interface to set/view application settings. The interface is similar to a
00027 // notebook with pages denoting different application settings.
00028 //
00029 
00030 #ifndef __vtkKWMimxApplicationSettingsInterface_h
00031 #define __vtkKWMimxApplicationSettingsInterface_h
00032 
00033 #include "vtkKWApplicationSettingsInterface.h"
00034 #include "vtkBuildingBlockWin32Header.h"
00035 
00036 
00037 class vtkKWFrameWithLabel;
00038 class vtkKWEntryWithLabel;
00039 class vtkKWLoadSaveButtonWithLabel;
00040 class vtkKWCheckButton;
00041 class vtkKWRadioButtonSet;
00042 class vtkKWCheckButtonWithLabel;
00043 class vtkKWScaleWithLabel;
00044 class vtkKWSeparator;
00045 class vtkKWEntryWithLabel;
00046 class vtkKWScaleWithLabel;
00047 
00048 class VTK_BUILDINGBLOCK_EXPORT vtkKWMimxApplicationSettingsInterface
00049   : public vtkKWApplicationSettingsInterface
00050 {
00051 public:
00052   static vtkKWMimxApplicationSettingsInterface* New();
00053   vtkTypeRevisionMacro(vtkKWMimxApplicationSettingsInterface,vtkKWApplicationSettingsInterface);
00054   vtkGetObjectMacro (FontSizeButtons, vtkKWRadioButtonSet );
00055   vtkGetObjectMacro (FontFamilyButtons, vtkKWRadioButtonSet );
00056 
00057   // Description:
00058   // Create the widget.
00059   virtual void Create();
00060   
00061   // Description:
00062   // Refresh the interface given the current value of the Window and its
00063   // views/composites/widgets.
00064   virtual void Update();
00065 
00066   // Description:
00067   // Set the default working directory for the program
00068   void SetWorkingDirectory( char *directoryName );
00069   
00070   // Description:
00071   // Callbacks for the Module application settings. Internal, do not use.
00072   
00073   // Description:
00074   // Callbacks for the Slicer font settings.
00075   virtual void SetFontFamilyCallback ( );
00076   virtual void SetFontSizeCallback ( );
00077   
00078   virtual void AutoSaveModeCallback(int mode);
00079   virtual void AutoSaveScaleCallback(double value);
00080   virtual void AutoSaveDirectoryModeCallback(int mode);
00081   virtual void AutoSaveDirectoryCallback( );
00082   virtual void AverageElementLengthCallback(char *value);
00083   virtual void ABAQUSPrecisionCallback(double value);
00084 
00085 protected:
00086   vtkKWMimxApplicationSettingsInterface();
00087   ~vtkKWMimxApplicationSettingsInterface();
00088 
00089   
00090 private:
00091   vtkKWMimxApplicationSettingsInterface(const vtkKWMimxApplicationSettingsInterface&); // Not implemented
00092   void operator=(const vtkKWMimxApplicationSettingsInterface&); // Not Implemented
00093 
00094   vtkKWFrameWithLabel *MimxSettingsFrame;
00095   vtkKWCheckButtonWithLabel *autoSaveButton;
00096   vtkKWScaleWithLabel *autoSaveScale;
00097   vtkKWCheckButtonWithLabel *workingDirButton;
00098   vtkKWLoadSaveButtonWithLabel *autoSaveDir;
00099   
00100   /* Font Configuration */
00101   vtkKWFrameWithLabel *FontSettingsFrame;
00102   vtkKWRadioButtonSet *FontSizeButtons;
00103   vtkKWRadioButtonSet *FontFamilyButtons;
00104   vtkKWSeparator *Separator;
00105   vtkKWEntryWithLabel *AverageElementLengthEntry;
00106   vtkKWScaleWithLabel *PropertyPrecisionScale;
00107 };
00108 
00109 
00110 #endif

Generated on 6 Apr 2011 for Slicer3 by  doxygen 1.6.1