]> Creatis software - clitk.git/blobdiff - vv/vvMainWindow.h
ITK v4 compatibility
[clitk.git] / vv / vvMainWindow.h
index 39f6ee50f5785fe00030d38cc0d2a3ab9fd0a8f4..1650571b26032c0766dfb7d1f7bbbb2db4aaa90a 100644 (file)
@@ -40,6 +40,7 @@ class vtkRenderer;
 class vtkMatrix4x4;
 class vvDicomSeriesSelector;
 class vvSlicer;
+class QTreeWidget;
 
 //------------------------------------------------------------------------------
 class vvMainWindow: public vvMainWindowBase,
@@ -60,14 +61,20 @@ class vvMainWindow: public vvMainWindowBase,
   void AddContour(int image_index, vvMesh::Pointer contour, bool propagation);
   ///This is used to show an image when opened or computed
   void ShowLastImage();
+  void SaveCurrentStateAs(const std::string& stateFile);
+  void ReadSavedStateFile(const std::string& stateFile);
+       void LinkAllImages();
+  QString Get4x4MatrixDoubleAsString(vtkSmartPointer<vtkMatrix4x4> matrix, const int precision=3);
 
   virtual void UpdateCurrentSlicer();
   virtual QTabWidget * GetTab();
+  QTreeWidget* GetTree() { return DataTree; }
   //vvMainWindowToolInfo * GetInfoForTool();
 //   void AddRunningTool(vvToolCreatorBase * tool);
 
 public slots:
   ///Allows the user to open and select various surfaces contained in a dicom-struct file
+  void AddDCStructContour(int index, QString file);
   void OpenDCStructContour();
   ///Computes the midposition image of a 4D sequence with a VF and displays it
   void ComputeMidPosition();
@@ -82,6 +89,8 @@ public slots:
   ///Open a vtkPolyData surface mesh and display it over the current image
   void OpenVTKContour();
   void SaveAs();
+  void SaveCurrentState();
+  void ReadSavedState();
   void CurrentImageChanged(std::string id);
   void CurrentPickedImageChanged(std::string id);
   void ImageInfoChanged();
@@ -101,11 +110,12 @@ public slots:
   void SegmentationOnCurrentImage();
   void SurfaceViewerLaunch();
 
-  void WindowLevelChanged(double window, double level,int preset, int colormap);
+  void WindowLevelChanged();
   void UpdateSlice(int slicer, int slice);
   void UpdateTSlice(int slicer, int slice);
   void UpdateSliceRange(int slicer, int min, int max, int tmin, int tmax);
   void WindowLevelEdited();
+  void SetWindowLevel(double w, double l);
   void UpdateColorMap();
   void UpdateWindowLevel();
   void SwitchWindowLevel();
@@ -132,6 +142,7 @@ public slots:
   void SaveNOScreenshot();
   void SaveSEScreenshot();
   void SaveSOScreenshot();
+  void SaveScreenshotAllSlices();
 
   void ShowContextMenu(QPoint point);
   void CloseImage();
@@ -139,10 +150,11 @@ public slots:
   void OpenField();
   void SelectOverlayImage();
   void SelectFusionImage();
+  void ResetTransformationToIdentity();
 
   void SetVFProperty(int subsampling,int scale,int lut, int width, double r, double g, double b);
-  void SetOverlayProperty(int color);
-  void SetFusionProperty(int opacity,int colormap,double window,double level);
+  void SetOverlayProperty(int color, int linked, double window, double level);
+  void SetFusionProperty(int opacity, int tresOpacity, int colormap,double window,double level);
 
   void GoToCursor();
   void PlayPause();
@@ -183,7 +195,6 @@ private:
   QString GetSizeInBytes(unsigned long size);
   QString GetVectorDoubleAsString(std::vector<double> vectorDouble);
   QString GetVectorIntAsString(std::vector<int> vectorInt);
-  QString Get4x4MatrixDoubleAsString(vtkSmartPointer<vtkMatrix4x4> matrix);
   int GetSlicerIndexFromItem(QTreeWidgetItem* item);
   QTreeWidgetItem* GetItemFromSlicerManager(vvSlicerManager* sm);
   void SaveScreenshot(QVTKWidget *widget);
@@ -210,6 +221,4 @@ private:
   
 };
 
-#include "vvMainWindow.txx"
-
 #endif