]> Creatis software - clitk.git/blob - vv/vvSaveState.h
Add window/level lines in histogram tool
[clitk.git] / vv / vvSaveState.h
1 #ifndef VVSAVESTATE_H
2 #define VVSAVESTATE_H
3
4 #include <string>
5 #include <memory>
6 #include "vvSlicerManager.h"
7
8 class vvMainWindow;
9 class QXmlStreamWriter;
10 class QFile;
11 class QTreeWidgetItem;
12
13 class vvSaveState
14 {
15 public:
16   vvSaveState();
17   virtual ~vvSaveState();
18   
19   virtual void Run(vvMainWindow* vvWindow, const std::string& file);
20     
21 protected:
22   
23   void SaveGlobals();
24   void SaveGUI();
25   void SaveTree();
26   void SaveTools();
27   void SaveImage(const QTreeWidgetItem* item, int index);
28   void SaveFusion(const QTreeWidgetItem* item, const vvSlicerManager* slicerManager);
29   void SaveOverlay(const QTreeWidgetItem* item, const vvSlicerManager* slicerManager);
30   void SaveVector(const QTreeWidgetItem* item);
31   void SaveLink(const vvSlicerManager* slicerManager);
32
33   std::auto_ptr<QXmlStreamWriter> m_XmlWriter;
34   std::auto_ptr<QFile> m_File;
35   vvMainWindow* m_Window;
36 };
37
38 #endif // VVSAVESTATE_H