]> Creatis software - creaMaracasVisu.git/blob - bbtk/src/bbmaracasvisuViewerMPR.cxx
Changed bbtk package name to comply to coding style
[creaMaracasVisu.git] / bbtk / src / bbmaracasvisuViewerMPR.cxx
1
2 #include "bbmaracasvisuViewerMPR.h"
3 #include "bbcreaMaracasVisuPackage.h"
4 namespace bbcreaMaracasVisu
5 {
6
7 //--------------------------------------------------------------------------
8 //--------------------------------------------------------------------------
9 //--------------------------------------------------------------------------
10
11
12   //--------------------------------------------------------------------------
13   // wxWidgetMPR
14   //--------------------------------------------------------------------------
15 BEGIN_EVENT_TABLE( wxWidgetMPR, wxPanel )
16         EVT_MENU( 12121, wxWidgetMPR::OnRefreshView )
17         EVT_MENU( 12122, wxWidgetMPR::OnDClickLeft  )
18 END_EVENT_TABLE( );
19
20   //-----------
21   //Constructor
22   //-----------
23   wxWidgetMPR::wxWidgetMPR(ViewerMPR* box,wxWindow* parent, marImageData        *marimagedata)
24           : wxPanel( parent, -1 )
25   {
26                 wxPanel *panel  = this;
27                 mbbViewerMPR    = box;
28
29                 wxwidget = new wxMPRWidget2( panel, marimagedata , 1 ); 
30                 wxwidget->ConfigureVTK();
31                 wxFlexGridSizer *sizer=new wxFlexGridSizer(1);
32                 sizer   -> Add( wxwidget,0,wxGROW ); 
33                 sizer   -> AddGrowableCol(1);
34                 panel   -> SetSizer(sizer);
35                 panel   -> SetAutoLayout(true);
36                 panel   -> Layout();            
37   }
38 //--------------------------------------------------------------------------
39   wxWidgetMPR::~wxWidgetMPR()
40   {
41
42   }
43 //--------------------------------------------------------------------------
44   /*
45         Getting the point
46   */
47   std::vector<int> wxWidgetMPR::GetPoint()
48   {
49           return point;
50   }
51   /*
52         Getting the render
53   */
54   vtkRenderer* wxWidgetMPR::GetRenderer()
55   {
56         if(wxwidget!=NULL)      
57         {
58                 return  wxwidget->GetWxvtkmpr3Dview_BB()->GetWxvtk3Dbaseview()->GetRenderer();
59         }
60         else
61         {
62                 return NULL;
63         }
64 }
65         
66 //--------------------------------------------------------------------------
67   void wxWidgetMPR::Refresh()
68   { 
69           wxwidget->RefreshView();
70   }
71
72 //--------------------------------------------------------------------------
73   //---------------
74   //Handling events
75   //---------------
76   void wxWidgetMPR::OnRefreshView(wxCommandEvent &event)
77   {
78
79           if((wxwidget!=NULL) && (mbbViewerMPR!=NULL))
80           {
81             point.clear();
82                 point.push_back((int)wxwidget->GetVtkMPRBaseData()->GetX());
83                 point.push_back((int)wxwidget->GetVtkMPRBaseData()->GetY());
84                 point.push_back((int)wxwidget->GetVtkMPRBaseData()->GetZ());
85                 mbbViewerMPR->bbSetOutputPoint( GetPoint() );
86                 mbbViewerMPR->bbSetModifiedStatus();
87                 mbbViewerMPR->bbSignalOutputModification("Point");    
88                 wxwidget->RefreshView();
89           }
90   }
91
92 //--------------------------------------------------------------------------
93   void wxWidgetMPR::OnDClickLeft(wxCommandEvent & event) 
94   {
95         wxwidget->RefreshView();
96   }
97
98 //--------------------------------------------------------------------------
99 //--------------------------------------------------------------------------
100 //--------------------------------------------------------------------------
101
102
103
104
105
106
107
108
109 BBTK_ADD_BLACK_BOX_TO_PACKAGE(creaMaracasVisu,ViewerMPR)
110 BBTK_BLACK_BOX_IMPLEMENTATION(ViewerMPR,bbtk::WxBlackBox);
111 void ViewerMPR::Process()
112 {
113                 wxBusyCursor wait;         
114                 bbSetOutputPoint( mwxwidgetmpr->GetPoint() );
115                 bbSetOutputRenderer( mwxwidgetmpr->GetRenderer() );  
116 }
117
118 void ViewerMPR::CreateWidget()
119 {
120         bbtkDebugMessageInc("Core",9,"ViewerMPR::CreateWidget() " <<std::endl);
121         marImageData    *marimagedata = new marImageData(bbGetInputIn() );
122         bbtkDebugDecTab("Core",9);
123         mwxwidgetmpr = new wxWidgetMPR(this , bbGetWxParent() ,marimagedata);
124         bbSetOutputWidget( mwxwidgetmpr );
125 }
126
127 void ViewerMPR::bbUserConstructor()
128 {
129                 bbSetInputIn(NULL);
130 }
131 void ViewerMPR::bbUserCopyConstructor()
132 {
133
134 }
135 void ViewerMPR::bbUserDestructor()
136 {
137
138 }
139 }
140 // EO namespace bbcreaMaracasVisu
141
142