]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasIRMView.h
*** empty log message ***
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / wxMaracasIRMView.h
1 /*=========================================================================
2
3   Program:   wxMaracas
4   Module:    $RCSfile: wxMaracasIRMView.h,v $
5   Language:  C++
6   Date:      $Date: 2009/06/10 17:42:28 $
7   Version:   $Revision: 1.5 $
8
9   Copyright: (c) 2002, 2003
10   License:
11
12      This software is distributed WITHOUT ANY WARRANTY; without even
13      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14      PURPOSE.  See the above copyright notice for more information.
15
16 =========================================================================*/
17
18 #ifndef __wxMaracasIRMViewPanelH__
19 #define __wxMaracasIRMViewPanelH__
20
21 #include <vector>
22 #include <wx/wx.h>
23 #include "wx/aui/aui.h"
24 #include <iostream>
25 #include "marTypes.h"
26 #include "vtkProp3D.h"
27
28 #include "wxMaracasIRMViewManager.h"
29 #include "wxMaracasIRMViewPanel.h"
30
31
32
33 class  creaMaracasVisu_EXPORT  wxMaracasIRMView : public wxPanel
34 {
35
36 public:
37         wxMaracasIRMView( wxWindow* parent, std::string path);
38     ~wxMaracasIRMView( );
39
40         static wxMaracasIRMView* getInstance(wxWindow* parent,std::string path="");
41
42         static wxMaracasIRMView* getInstance();
43
44         void setRenderer(vtkRenderer*  renderer);
45
46         void changeOpacity(int propid, int value);
47
48         void changeIsoValue(int propid, double value);
49
50     void addRemoveActor(int propid, bool addremove);
51
52         void changeColor(int propid, double red, double green, double blue);
53
54         void addProp3D(vtkProp3D* prop3D, std::string dataname="");
55
56         void addPropMHD(vtkImageData* imgdata, std::string dataname="");
57
58         void loadProp3D(wxString filename, wxString dataname);
59
60         void loadPropMHD(wxString filename, wxString dataname);
61
62         void onLoadImageFile();
63
64         void addIRMViewPanel(wxMaracasIRMViewPanel* irmview, std::string dataname="");
65
66         std::string getPath();
67
68         void deleteActor(int propid);
69 private:
70         static wxMaracasIRMView* instance;
71
72         wxMaracasIRMViewManager* irmmanager;
73
74         wxAuiManager* wxauimanager;
75
76         void createFileChooser();
77
78         std::string _path;
79
80 };
81
82
83
84 class ToolBar : public wxToolBar{
85
86         public:class ToolBarEventHandler : public wxEvtHandler{
87
88         public:
89                 ToolBarEventHandler();
90                 ~ToolBarEventHandler();
91
92                 void onLoadImageFile(wxCommandEvent& event);
93
94         private:
95
96                 DECLARE_EVENT_TABLE()
97         };
98
99         ToolBar(wxWindow * parent,std::string iconsdir);
100         ~ToolBar(void);
101
102
103 private:
104
105         ToolBarEventHandler evthand;
106
107 };
108
109 #endif
110