]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasSuperpositionPanel.h
*** empty log message ***
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / wxMaracasSuperpositionPanel.h
1 #ifndef __wxMaracasSuperpositionPanelH__
2 #define __wxMaracasSuperpositionPanelH__
3
4 // -----------------------------------------------------------------------------------------------------------
5 // WX headers inclusion.
6 // For compilers that support precompilation, includes <wx/wx.h>.
7 // -----------------------------------------------------------------------------------------------------------
8
9 #include <wx/wxprec.h>
10 #ifdef __BORLANDC__
11 #pragma hdrstop
12 #endif
13 #ifndef WX_PRECOMP
14 #include <wx/wx.h>
15 #endif
16
17 #include <wx/scrolwin.h>
18
19 //------------------------------------------------------------------------------------------------------------
20 // Includes
21 //------------------------------------------------------------------------------------------------------------
22
23 #include "wxMaracas_N_ViewersWidget.h"
24 #include "vtkImageData.h"
25 #include "wxVtkBaseView.h"
26
27 //------------------------------------------------------------------------------------------------------------
28 // Class definition
29 //------------------------------------------------------------------------------------------------------------
30
31 class creaMaracasVisu_EXPORT wxMaracasSuperpositionPanel : public wxPanel
32 {
33
34 public:
35
36         wxMaracasSuperpositionPanel( std::vector<vtkImageData*> imgs, wxWindow *parent, const wxPoint& pos=wxDefaultPosition, 
37         const wxSize& size = wxDefaultSize,long style= wxDEFAULT_FRAME_STYLE | wxSUNKEN_BORDER, int vertStart=1, int vertEnd=1, 
38         int horzStart=1, int horzEnd=1 );
39
40
41         ~wxMaracasSuperpositionPanel(); 
42
43 //------------------------------------------------------------------------------------------------------------
44 // Creational and initialization methods
45 //------------------------------------------------------------------------------------------------------------
46         
47         void createSuperpositionPanel();
48
49 //------------------------------------------------------------------------------------------------------------
50 //  Other functional methods
51 //------------------------------------------------------------------------------------------------------------
52
53         void getSpacing( double * spacing );
54
55         wxVtkBaseView* GetWxVtkBaseView();
56         wxVtkMPR2DView * GetwxVtkMPR2DView();
57         vtkImageData * GetshowingVID();
58         int GetImageDataSizeZ();
59         void RefreshInterface();
60         void ChangeImage(vtkImageData* img);
61         
62         void    SetVisibleAxis(bool ok);
63         int             GetX();
64         int             GetY();
65         int             GetZ();
66         void    Refresh();      
67         
68
69 private:
70
71         std::vector<vtkImageData*> _images;
72         
73         /*
74         * Represents the panel for viewing
75         */
76         wxMaracas_N_ViewersWidget * theViewPanel;
77         
78         /*
79         * Represents the outer sizer of the IRMViewPanel
80         */
81         wxFlexGridSizer* outSizer;
82
83         double last_spacing[3];
84         
85 };
86
87 #endif /*__wxMaracasSuperpositionPanelH__*/