X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvToolROIManager.h;h=db630c641b059c4838a376d7bdfdf380a70d4fd5;hb=1c6241402b25efea0052f0464be9a494e761b19e;hp=2d91264405229913f4e8da7029c7f2bd7b5a1d96;hpb=29c90b5fbd7ecd5d8375e02b7a03734c4fdbc806;p=clitk.git diff --git a/vv/vvToolROIManager.h b/vv/vvToolROIManager.h index 2d91264..db630c6 100644 --- a/vv/vvToolROIManager.h +++ b/vv/vvToolROIManager.h @@ -19,7 +19,12 @@ #ifndef VVTOOLROIMANAGER_H #define VVTOOLROIMANAGER_H +#include +#if QT_VERSION >= 0x050000 +#include +#else #include +#endif #include #include "vvToolBase.h" @@ -43,13 +48,70 @@ class vvToolROIManager: static void Initialize(); virtual void InputIsSelected(vvSlicerManager *m); + void AddImage(vvImage * binaryImage, std::string name, std::string filename, double BG, bool m_modeBG=true); + void UpdateAllContours(); + void UpdateAllROIStatus(); +#if __cplusplus > 199711L + virtual void SaveState(std::shared_ptr & m_XmlWriter); +#else + virtual void SaveState(std::auto_ptr & m_XmlWriter); +#endif + virtual void InitializeNewTool(bool ReadStateFlag); + public slots: void AnImageIsBeingClosed(vvSlicerManager *); void SelectedImageHasChanged(vvSlicerManager *); + void Open(); + void OpenBinaryImage(QStringList & filenames); + void OpenDicomImage(std::string filaneme); + void SelectedItemChangedInTree(); + void VisibleROIToggled(bool b); + void VisibleContourROIToggled(bool b); + void OpacityChanged(int v); + void ChangeColor(); + void ChangeContourColor(); + void ChangeContourWidth(int n); + void ChangeDepth(int n); + void AllVisibleROIToggled(int b); + void AllVisibleContourROIToggled(int b); + void ReloadCurrentROI(); + void close(); + void RemoveROI(); + vvSlicerManager * GetCurrentSlicerManager() { return mCurrentSlicerManager; } protected: Ui::vvToolROIManager ui; - vvSlicerManager * mSlicerManager; + vvSlicerManager * mCurrentSlicerManager; // need it because do not inherit from vvToolWidgetBase + vvImage * mCurrentImage; + vvMainWindowBase * mMainWindow; + int mIndexFirstTab; + bool mOpenFileBrowserFlag; + + int mNumberOfVisibleROI; + int mNumberOfVisibleContourROI; + static int nbTotalROI; + + vtkSmartPointer mDefaultLUTColor; + + QStringList mOpenedBinaryImageFilenames; + std::vector mROIList; + std::vector > mROIActorsList; + + // Data for the widget Tree + std::vector< QSharedPointer > mTreeWidgetList; + std::map mMapROIToTreeWidget; + std::map mMapTreeWidgetToROI; + + // Data for current selected roi + clitk::DicomRT_ROI::Pointer mCurrentROI; + QSharedPointer mCurrentROIActor; + + // Data for XML Reader + void ReadXMLInformation(); + void ReadXMLInformation_ROI(); + uint mInitialImageIndex; + QStringList mROIFilenames; + std::vector > mROIActorsParamList; }; // end class vvToolROIManager //------------------------------------------------------------------------------