]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasIRMView.h
5e90935ca22a291f570b4c2e5e901c6adc42ff41
[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/05/14 13:54:35 $
7   Version:   $Revision: 1.4 $
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:
87         
88         ToolBar(wxWindow * parent,std::string iconsdir);
89         ~ToolBar(void);
90         
91         
92         void onLoadImageFile(wxCommandEvent& event);
93         
94 private:
95
96         
97
98         
99 DECLARE_EVENT_TABLE()
100 };
101
102 #endif
103