X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvMainWindow.h;h=1650571b26032c0766dfb7d1f7bbbb2db4aaa90a;hb=e494dd1b9280b0ecd93f017eb8d9774ee9b2a787;hp=dcfe9ed464798f904625ac7249f44e3a3b993122;hpb=11e1f5ecf576e2a700f5c09d4b580c3234bf7e40;p=clitk.git diff --git a/vv/vvMainWindow.h b/vv/vvMainWindow.h index dcfe9ed..1650571 100644 --- a/vv/vvMainWindow.h +++ b/vv/vvMainWindow.h @@ -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 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,9 +150,10 @@ 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 SetOverlayProperty(int color, int linked, double window, double level); void SetFusionProperty(int opacity, int tresOpacity, int colormap,double window,double level); void GoToCursor(); @@ -183,7 +195,6 @@ private: QString GetSizeInBytes(unsigned long size); QString GetVectorDoubleAsString(std::vector vectorDouble); QString GetVectorIntAsString(std::vector vectorInt); - QString Get4x4MatrixDoubleAsString(vtkSmartPointer matrix); int GetSlicerIndexFromItem(QTreeWidgetItem* item); QTreeWidgetItem* GetItemFromSlicerManager(vvSlicerManager* sm); void SaveScreenshot(QVTKWidget *widget);