X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FwxVtkMPR3DViewCntrlPanel.cxx;h=a5df47a8f16d9dcbce689aea341db25af6bc3a26;hb=f050938d3947f6b785289da6d58f8fec2da57421;hp=25a2781e3497d37acb1ab4077ea483a806b55568;hpb=199d5048b6c5ac6663b8671f55289e4a0820f9cc;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtkMPR3DViewCntrlPanel.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtkMPR3DViewCntrlPanel.cxx index 25a2781..a5df47a 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtkMPR3DViewCntrlPanel.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtkMPR3DViewCntrlPanel.cxx @@ -1,6 +1,7 @@ #include "wxVtkMPR3DViewCntrlPanel.h" #include "HistogramDialog.h" +#include wxVtkMPR3DViewCntrlPanel::wxVtkMPR3DViewCntrlPanel(wxWindow *parent, wxVtkMPR3DView *wxvtkmpr3Dview, bool align ) : wxPanel(parent, -1) @@ -59,6 +60,22 @@ wxVtkMPR3DViewCntrlPanel::wxVtkMPR3DViewCntrlPanel(wxWindow *parent, wxVtkMPR3DV _positionY->SetSize(400,20); _positionZ->SetSize(400,20); + // Stereo + _cbStereo = new wxComboBox(panel, -1, _T(""), wxDefaultPosition, wxDefaultSize, 0, NULL,wxCB_READONLY ); + _cbStereo->Append(_T(" * NO STEREO")); + _cbStereo->Append(_T(" STEREO CRYSTAL EYES")); + _cbStereo->Append(_T(" STEREO RED BLUE")); + _cbStereo->Append(_T(" STEREO INTERLACED")); + _cbStereo->Append(_T(" STEREO LEFT")); + _cbStereo->Append(_T(" STEREO RIGHT")); + _cbStereo->Append(_T(" STEREO DRESDEN")); + _cbStereo->Append(_T(" * STEREO ANAGLYPH")); + _cbStereo->Append(_T(" STEREO CHECKERBOARD")); + _cbStereo->Select(0); + + + + Connect(ckBoxX->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnVisibleAxisX ); Connect(_positionX->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnPositionX ); Connect(ckBoxY->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnVisibleAxisY ); @@ -74,6 +91,9 @@ wxVtkMPR3DViewCntrlPanel::wxVtkMPR3DViewCntrlPanel(wxWindow *parent, wxVtkMPR3DV Connect(_ckFreePlaneY->GetId() , wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnVisibleFreePlaneY ); Connect(_ckFreePlaneZ->GetId() , wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnVisibleFreePlaneZ ); Connect(_ckFreePlaneInteraction->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnVisibleFreePlaneInteraction ); + + Connect(_cbStereo->GetId(), wxEVT_COMMAND_COMBOBOX_SELECTED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnSetStereo ); + wxFlexGridSizer *sizer; @@ -84,9 +104,10 @@ wxVtkMPR3DViewCntrlPanel::wxVtkMPR3DViewCntrlPanel(wxWindow *parent, wxVtkMPR3DV wxFlexGridSizer *sizerH4; wxFlexGridSizer *sizerH5; wxFlexGridSizer *sizerH6; + wxFlexGridSizer *sizerH7; if(align) { - sizer = new wxFlexGridSizer(3); + sizer = new wxFlexGridSizer(4); sizerH4 = new wxFlexGridSizer(2); sizerH4->Add( _positionX ,1,wxGROW , 0 ); @@ -140,7 +161,11 @@ wxVtkMPR3DViewCntrlPanel::wxVtkMPR3DViewCntrlPanel(wxWindow *parent, wxVtkMPR3DV sizerH6->Add( _ckFreePlaneInteraction , 1, wxALL|wxEXPAND, 0); } + + sizerH7 = new wxFlexGridSizer(1); + sizerH7->Add( _cbStereo, 1, wxALL|wxEXPAND, 0); + //EED 28 sep 2006 // wxFlexGridSizer *sizerH6 = new wxFlexGridSizer(10); // wxFlexGridSizer *sizerH7 = new wxFlexGridSizer(10); @@ -173,6 +198,7 @@ wxVtkMPR3DViewCntrlPanel::wxVtkMPR3DViewCntrlPanel(wxWindow *parent, wxVtkMPR3DV sizer->Add( sizerH4, 1, wxALL|wxGROW, 2); sizer->Add( sizerH5, 1, wxALL|wxEXPAND,2); sizer->Add( sizerH6, 1, wxALL|wxEXPAND,2); + sizer->Add( sizerH7, 1, wxALL|wxEXPAND,2); panel->SetSize(400,50); panel->SetAutoLayout(true); @@ -182,7 +208,14 @@ wxVtkMPR3DViewCntrlPanel::wxVtkMPR3DViewCntrlPanel(wxWindow *parent, wxVtkMPR3DV panel->SetEventHandler((wxEvtHandler*)this); //this->UpdateControlPanel(); + } + + + + +//------------------------------------------------------------------- + void wxVtkMPR3DViewCntrlPanel::UpdateControlPanel() { vtkMPRBaseData* basedata = _wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData(); @@ -211,19 +244,23 @@ void wxVtkMPR3DViewCntrlPanel::UpdateControlPanel() _positionY->SetValue((y0+y1)/2); _positionZ->SetValue((z0+z1)/2); - _positionX->Update(); - _positionY->Update(); - _positionZ->Update(); - this->Update(); +printf("EED wxVtkMPR3DViewCntrlPanel::UpdateControlPanel -- 12April2012 This make a floting window in MacOs and Linux with for windows \n"); +//EED 12April2012 This make a floting window in MacOs and Linux with for windows +// _positionX->Update(); +// _positionY->Update(); +// _positionZ->Update(); +// this->Update(); } } } + //------------------------------------------------------------------- wxVtkMPR3DViewCntrlPanel::~wxVtkMPR3DViewCntrlPanel() { } + //------------------------------------------------------------------- void wxVtkMPR3DViewCntrlPanel::Refresh() { @@ -232,6 +269,7 @@ void wxVtkMPR3DViewCntrlPanel::Refresh() _positionY->SetValue( (int)(_wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetY( )) ); _positionZ->SetValue( (int)(_wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetZ( )) ); } + /* //------------------------------------------------------------------- int wxVtkMPR3DViewCntrlPanel::GetIdTissue() @@ -400,11 +438,17 @@ void wxVtkMPR3DViewCntrlPanel::OnVisibleFreePlaneInteraction(wxCommandEvent& eve _wxvtkmpr3Dview->FreePlaneInteraction( event.IsChecked() ); } +//------------------------------------------------------------------- +void wxVtkMPR3DViewCntrlPanel::OnSetStereo(wxCommandEvent& event) +{ + this->_wxvtkmpr3Dview->GetWxvtk3Dbaseview()->SetStereo( _cbStereo->GetSelection() ); +} + + //------------------------------------------------------------------- void wxVtkMPR3DViewCntrlPanel::OnVisibleAxisX(wxCommandEvent& event) -{ - +{ _wxvtkmpr3Dview->VisibleImageActor(0, event.IsChecked() ); _wxvtkmpr3Dview->Refresh();