]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasSuperpositionPanel.h
creaButtonContainer, creaPanelButtonContainer. Cleaned 98% ready to be used :) :) :)
[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, int type, 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         int _type;
75         
76         /*
77         * Represents the panel for viewing
78         */
79         wxMaracas_N_ViewersWidget * theViewPanel;
80         
81         /*
82         * Represents the outer sizer of the IRMViewPanel
83         */
84         wxFlexGridSizer* outSizer;
85
86         double last_spacing[3];
87         
88 };
89
90 #endif /*__wxMaracasSuperpositionPanelH__*/