X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvMainWindow.h;h=1650571b26032c0766dfb7d1f7bbbb2db4aaa90a;hb=6fbc5b0555a148aed6478cfd1ea7593f32f5dd3c;hp=7da8a9171ecc8e0018cdf5606daef1f947eb75ed;hpb=473cb0db7da37740926a0ec36b3f449ef27ef565;p=clitk.git diff --git a/vv/vvMainWindow.h b/vv/vvMainWindow.h index 7da8a91..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(); @@ -142,7 +153,7 @@ public slots: 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(); @@ -184,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);