]> Creatis software - creaMaracasVisu.git/blobdiff - lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtkMPR3DViewCntrlPanel.cxx
Bug Rendering
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / wxVtkMPR3DViewCntrlPanel.cxx
index dd182d53d77602d5b2ce074cfcb70e8523e8d502..9a62c86f3918565c4fe1c5511485989960d88135 100644 (file)
@@ -45,24 +45,24 @@ wxVtkMPR3DViewCntrlPanel::wxVtkMPR3DViewCntrlPanel(wxWindow *parent, wxVtkMPR3DV
        //CPR: Modified 30 Nov 2009
        /*
        wxCheckBox              *ckBoxX                 = new wxCheckBox(panel,-1,_T("X           "));
-                                       _positionX              = new wxSlider(panel,-1,maxX/2,0,maxX, wxDefaultPosition, wxSize(150,40), wxSL_HORIZONTAL | wxSL_LABELS);
+                                       _positionX              = new wxSlider(panel,-1,maxX/2,0,maxX, wxDefaultPosition,  wxDefaultSize, wxSL_HORIZONTAL | wxSL_LABELS);
        wxCheckBox              *ckBoxY                 = new wxCheckBox(panel,-1,_T("Y           "));
-                                       _positionY              = new wxSlider(panel,-1,maxY/2,0,maxY, wxDefaultPosition, wxSize(150,40), wxSL_HORIZONTAL | wxSL_LABELS);
+                                       _positionY              = new wxSlider(panel,-1,maxY/2,0,maxY, wxDefaultPosition,  wxDefaultSize, wxSL_HORIZONTAL | wxSL_LABELS);
        wxCheckBox              *ckBoxZ                 = new wxCheckBox(panel,-1,_T("Z           "));
-                                       _positionZ              = new wxSlider(panel,-1,maxZ/2,0,maxZ, wxDefaultPosition, wxSize(150,40), wxSL_HORIZONTAL | wxSL_LABELS);
+                                       _positionZ              = new wxSlider(panel,-1,maxZ/2,0,maxZ, wxDefaultPosition,  wxDefaultSize, wxSL_HORIZONTAL | wxSL_LABELS);
        wxButton                *btnColorTable  = new wxButton (panel, -1, _T("Edit Color Table") );
        */
 
        _ckBoxX                                         = new wxCheckBox(panel,-1,_T("X   "));
-       _positionX                                      = new wxSlider(panel,-1,0,0,1, wxDefaultPosition, wxSize(300,40), wxSL_HORIZONTAL | wxSL_LABELS);
+       _positionX                                      = new wxSlider(panel,-1,0,0,1, wxDefaultPosition, wxDefaultSize, wxSL_HORIZONTAL | wxSL_LABELS);
        _ckBoxY                                         = new wxCheckBox(panel,-1,_T("Y   "));
-       _positionY                                      = new wxSlider(panel,-1,0,0,1, wxDefaultPosition, wxSize(300,40), wxSL_HORIZONTAL | wxSL_LABELS);
+       _positionY                                      = new wxSlider(panel,-1,0,0,1, wxDefaultPosition, wxDefaultSize, wxSL_HORIZONTAL | wxSL_LABELS);
        _ckBoxZ                                         = new wxCheckBox(panel,-1,_T("Z   "));
-       _positionZ                                      = new wxSlider(panel,-1,0,0,1, wxDefaultPosition, wxSize(300,40), wxSL_HORIZONTAL | wxSL_LABELS);
+       _positionZ                                      = new wxSlider(panel,-1,0,0,1, wxDefaultPosition, wxDefaultSize, wxSL_HORIZONTAL | wxSL_LABELS);
 
        _ckBoxXYZ                                       = new wxCheckBox(panel,-1,_T("3D Axis  "));
        _ckBoxFixAxis2D                         = new wxCheckBox(panel,-1,_T("2D Fix Axis"));
-       _opacityAxis                            = new wxSlider(panel,-1,50,0,100, wxDefaultPosition, wxSize(100,40), wxSL_HORIZONTAL | wxSL_LABELS);
+       _opacityAxis                            = new wxSlider(panel,-1,100,0,100, wxDefaultPosition, wxDefaultSize, wxSL_HORIZONTAL | wxSL_LABELS);
 
        _ckBoxPlane                                     = new wxCheckBox(panel,-1,_T("Plane"));
 ////EED 05Nov2012      _ckBox_BW_Color_Plane           = new wxCheckBox(panel,-1,_T("GL/Color"));
@@ -86,12 +86,17 @@ wxVtkMPR3DViewCntrlPanel::wxVtkMPR3DViewCntrlPanel(wxWindow *parent, wxVtkMPR3DV
        _ckBoxXYZ->SetValue(false);
 ////EED 05Nov2012      _ckBox_BW_Color_Plane->SetValue(true);
        _ckBoxPlane->SetValue(false);
-       _ckBoxOutline= new wxCheckBox(panel,-1,_T("Outline"));
-       _ckBoxOutline->SetValue(true);
        _ckBoxInterpolate= new wxCheckBox(panel,-1,_T("Interpolate"));
        _ckBoxInterpolate->SetValue(true);
 
 
+       _ckBoxOutlineBox= new wxCheckBox(panel,-1,_T("Outline Box"));
+       _ckBoxOutlineBox->SetValue(true);
+       _ckBoxOutlinePlane= new wxCheckBox(panel,-1,_T("Outline Plane"));
+       _ckBoxOutlinePlane->SetValue(true);
+       _ckBoxBackGroundBlack= new wxCheckBox(panel,-1,_T("Background Black"));;
+       _ckBoxBackGroundBlack->SetValue(false);
+       
        _ckBoxBackGroundBlack= new wxCheckBox(panel,-1,_T("Background Black"));;
        _ckBoxBackGroundBlack->SetValue(false);
 
@@ -128,7 +133,8 @@ wxVtkMPR3DViewCntrlPanel::wxVtkMPR3DViewCntrlPanel(wxWindow *parent, wxVtkMPR3DV
        Connect(btnFreePlanesOrtho->GetId()             , wxEVT_COMMAND_BUTTON_CLICKED,   (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnFreePlanesOrtho  );
        Connect(_ckFreePlaneInteraction->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnVisibleFreePlaneInteraction );
        Connect(_cbStereo->GetId()                              , wxEVT_COMMAND_COMBOBOX_SELECTED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnSetStereo               );
-       Connect(_ckBoxOutline->GetId()                  , wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnOutline                  );
+       Connect(_ckBoxOutlineBox->GetId()                       , wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnOutlineBox                       );
+       Connect(_ckBoxOutlinePlane->GetId()                     , wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnOutlinePlane                     );
        Connect(_ckBoxBackGroundBlack->GetId()  , wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnBackGroundBlack  );
        Connect(_ckBoxInterpolate->GetId()              , wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnInterpolate              );
        Connect(_ckBoxFixAxis2D->GetId()                , wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnFixAxis2D                );
@@ -140,6 +146,7 @@ wxVtkMPR3DViewCntrlPanel::wxVtkMPR3DViewCntrlPanel(wxWindow *parent, wxVtkMPR3DV
        //      wxBoxSizer *sizerH4 = new wxBoxSizer(wxHORIZONTAL);
        
        //CPR: If-else statements added 30 Nov 2009
+       wxFlexGridSizer *sizerV1;
        wxFlexGridSizer *sizerH4;
        wxFlexGridSizer *sizerH4a;
        wxFlexGridSizer *sizerH5;
@@ -149,6 +156,7 @@ wxVtkMPR3DViewCntrlPanel::wxVtkMPR3DViewCntrlPanel(wxWindow *parent, wxVtkMPR3DV
        {
                sizer   = new wxFlexGridSizer(4);
                sizerH4 = new wxFlexGridSizer(3);
+
                sizerH4a = new wxFlexGridSizer(3);
                
                sizerH4->Add( new wxStaticText(panel, -1,_T(" "))               ,1, wxALL|wxEXPAND                                              , 0);
@@ -196,15 +204,14 @@ wxVtkMPR3DViewCntrlPanel::wxVtkMPR3DViewCntrlPanel(wxWindow *parent, wxVtkMPR3DV
                sizerH5->Add( _cbStereo                                                                 , 1, wxALL|wxEXPAND                                             , 0);
                
                sizerH6 = new wxFlexGridSizer(1);
-               sizerH6->Add( _ckBoxOutline                                                             , 1, wxALL|wxEXPAND                                             , 0);
+               sizerH6->Add( _ckBoxOutlineBox                                                  , 1, wxALL|wxEXPAND                                             , 0);
+               sizerH6->Add( _ckBoxOutlinePlane                                                , 1, wxALL|wxEXPAND                                             , 0);
                sizerH6->Add( _ckBoxBackGroundBlack                                             , 1, wxALL|wxEXPAND                                             , 0);
 
-
-               sizer->Add( sizerH4                                                                             ,  1, wxALL|wxGROW,     2);
+               sizer->Add( sizerH4,  1, wxALL|wxGROW,  2);
                sizer->Add( sizerH5,  1, wxALL|wxEXPAND,2);
                sizer->Add( sizerH6,  1, wxALL|wxEXPAND,2);
-               
-               
+                       
        }       else    {
                sizer    = new wxFlexGridSizer(1);
 
@@ -276,7 +283,9 @@ wxVtkMPR3DViewCntrlPanel::wxVtkMPR3DViewCntrlPanel(wxWindow *parent, wxVtkMPR3DV
        //      sizerH5->Add( ckBoxZ                            ,  1, wxALL|wxEXPAND, 0);
 
 
-       panel->SetSize(400,50);
+       panel->ClearBackground();
+//     panel->SetSize(400,50);
+       sizer->FitInside(panel);
        panel->SetAutoLayout(true);
        panel->SetSizer(sizer);
        panel->Layout();
@@ -540,7 +549,12 @@ void wxVtkMPR3DViewCntrlPanel::OnVisibleAxisX(wxCommandEvent& event)
        wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121);  // Refresh
 
        try{
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
                _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
+#else
+               _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessWindowEvent(newevent1);
+#endif
        }catch(char* e){
                std::cout<<e<<std::endl;
        }
@@ -552,17 +566,25 @@ void wxVtkMPR3DViewCntrlPanel::OnVisibleAxisY(wxCommandEvent& event)
        _wxvtkmpr3Dview->Refresh();
 
        wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121); // Refresh
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
        _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
-
+#else
+       _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessWindowEvent(newevent1);
+#endif
 }
 //-------------------------------------------------------------------
 void wxVtkMPR3DViewCntrlPanel::OnVisibleAxisZ(wxCommandEvent& event)
 {
        _wxvtkmpr3Dview->VisibleImageActor(2, event.IsChecked() );
        _wxvtkmpr3Dview->Refresh();
-
        wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121);  // Refresh
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
        _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
+#else
+       _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessWindowEvent(newevent1);
+#endif
 }
 
 //-------------------------------------------------------------------
@@ -576,7 +598,6 @@ void wxVtkMPR3DViewCntrlPanel::OnVisibleAxisXYZ(wxCommandEvent& event)
 void wxVtkMPR3DViewCntrlPanel::OnVisiblePlane(wxCommandEvent& event)
 {
        _wxvtkmpr3Dview->VisiblePlaneWidget(event.IsChecked());
-
 }
 
 //-------------------------------------------------------------------
@@ -586,7 +607,12 @@ void wxVtkMPR3DViewCntrlPanel::OnPositionX(wxScrollEvent& event)
        _wxvtkmpr3Dview->RefreshView();
 
        wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121);  // Refresh
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
        _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
+#else
+       _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessWindowEvent(newevent1);
+#endif
 }
 //-------------------------------------------------------------------
 void wxVtkMPR3DViewCntrlPanel::OnPositionY(wxScrollEvent& event)
@@ -594,7 +620,12 @@ void wxVtkMPR3DViewCntrlPanel::OnPositionY(wxScrollEvent& event)
        _wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->SetY( _positionY->GetValue() );
        _wxvtkmpr3Dview->RefreshView();
        wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121);  // Refresh
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
        _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
+#else
+       _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessWindowEvent(newevent1);
+#endif
 }
 //-------------------------------------------------------------------
 void wxVtkMPR3DViewCntrlPanel::OnPositionZ(wxScrollEvent& event)
@@ -602,7 +633,12 @@ void wxVtkMPR3DViewCntrlPanel::OnPositionZ(wxScrollEvent& event)
        _wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->SetZ( _positionZ->GetValue() );
        _wxvtkmpr3Dview->RefreshView();
        wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121);  // Refresh
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
        _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
+#else
+       _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessWindowEvent(newevent1);
+#endif
 }
 
 
@@ -653,7 +689,12 @@ void wxVtkMPR3DViewCntrlPanel::SetVisibleX(bool value)
        _wxvtkmpr3Dview->Refresh();
 
        wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121); // Refresh
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
        _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
+#else
+       _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessWindowEvent(newevent1);
+#endif
 }
 
 //-------------------------------------------------------------------
@@ -665,7 +706,12 @@ void wxVtkMPR3DViewCntrlPanel::SetVisibleY(bool value)
        _wxvtkmpr3Dview->Refresh();
 
        wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121); // Refresh
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
        _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
+#else
+       _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessWindowEvent(newevent1);
+#endif
 }
 
 //-------------------------------------------------------------------
@@ -677,7 +723,12 @@ void wxVtkMPR3DViewCntrlPanel::SetVisibleZ(bool value)
        _wxvtkmpr3Dview->Refresh();
 
        wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121); // Refresh
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
        _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
+#else
+       _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessWindowEvent(newevent1);
+#endif
 }
 
 //-------------------------------------------------------------------
@@ -697,11 +748,17 @@ void wxVtkMPR3DViewCntrlPanel::SetVisiblePlane(bool value)
 
 
 //-------------------------------------------------------------------
-void wxVtkMPR3DViewCntrlPanel::OnOutline(wxCommandEvent& event)
+void wxVtkMPR3DViewCntrlPanel::OnOutlineBox(wxCommandEvent& event)
 {
-       _wxvtkmpr3Dview->showOutlineActor( _ckBoxOutline->GetValue() );
+       _wxvtkmpr3Dview->showOutlineBoxActor( _ckBoxOutlineBox->GetValue() );
        _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->Refresh();
+}
 
+//-------------------------------------------------------------------
+void wxVtkMPR3DViewCntrlPanel::OnOutlinePlane(wxCommandEvent& event)
+{
+       _wxvtkmpr3Dview->showOutlinePlaneActor( _ckBoxOutlinePlane->GetValue() );
+       _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->Refresh();
 }
 
 //-------------------------------------------------------------------
@@ -720,8 +777,13 @@ void wxVtkMPR3DViewCntrlPanel::OnInterpolate(wxCommandEvent& event)
 {
        _wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->SetInterpolate(  _ckBoxInterpolate->GetValue() );
        _wxvtkmpr3Dview->Refresh();
-       wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121); // Refresh
+       wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121); // Refresh 
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
        _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
+#else
+       _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessWindowEvent(newevent1);
+#endif
 }
 
 //-------------------------------------------------------------------
@@ -730,7 +792,12 @@ void wxVtkMPR3DViewCntrlPanel::OnFixAxis2D(wxCommandEvent& event)
        _wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->SetFixAxis2D(    _ckBoxFixAxis2D->GetValue() );
        _wxvtkmpr3Dview->Refresh();
        wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121); // Refresh
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
        _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
+#else
+       _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessWindowEvent(newevent1);
+#endif
 }
 
 //-------------------------------------------------------------------
@@ -739,7 +806,12 @@ void wxVtkMPR3DViewCntrlPanel::OnOpacityAxis(wxCommandEvent& event)
        _wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->SetOpacityAxis(  _opacityAxis->GetValue()/100.0 );
        _wxvtkmpr3Dview->Refresh();
        wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121); // Refresh
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
        _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
+#else
+       _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessWindowEvent(newevent1);
+#endif 
 }