X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FmanualPaint%2FwxManualPaintPanel.cpp;h=e8f8d2c523e3cf90657b437f59d052d2ad1c134d;hb=07c470d8eed4bd0b96f829c7dc9f63cc5d714869;hp=3170c69e8f8087ddbc4590e844a0e197ed899d4b;hpb=23b33a3a7e3f42eacbaad218510fb77e27aa9c2f;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/wxManualPaintPanel.cpp b/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/wxManualPaintPanel.cpp index 3170c69..e8f8d2c 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/wxManualPaintPanel.cpp +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/wxManualPaintPanel.cpp @@ -11,7 +11,7 @@ wxManualPaintPanel::wxManualPaintPanel(wxWindow * parent) // Widget interface wxStaticText *tittleText = new wxStaticText(panel, -1, _T(" Manual Paint")); - wxStaticText *txtBrushSize = new wxStaticText(panel, -1, wxString(_T(" Brush size "))); + _txtBrushSize = new wxStaticText(panel, -1, wxString(_T(" Brush size "))); _sldBrushSize = new wxSlider(panel, -1, 1, 1, 20, wxDefaultPosition, wxDefaultSize, wxSL_LABELS); wxStaticText *txtGrayLevel = new wxStaticText(panel, -1, wxString(_T(" Gray Level "))); _sldGrayLevel = new wxSlider(panel, -1, 0, 0, 50, wxDefaultPosition, wxDefaultSize, wxSL_LABELS); @@ -20,13 +20,30 @@ wxManualPaintPanel::wxManualPaintPanel(wxWindow * parent) _sldToleranceFill = new wxSlider(panel, -1, 50, 0, 50, wxDefaultPosition, wxDefaultSize, wxSL_LABELS); _tolerancefillCtrl = new wxTextCtrl(panel , -1,_T("50") ); _txtDistanceFill = new wxStaticText(panel, -1, wxString(_T(" Distance fill "))); - _sldDistanceFill = new wxSlider(panel, -1, 50, 1, 50, wxDefaultPosition, wxDefaultSize, wxSL_LABELS); - _distancefillCtrl = new wxTextCtrl(panel , -1,_T("50") ); - + _sldDistanceFill = new wxSlider(panel, -1, 500, 1, 500, wxDefaultPosition, wxDefaultSize, wxSL_LABELS); + _distancefillCtrl = new wxTextCtrl(panel , -1,_T("500") ); + //DFCH -- BarSlices + double range[2]; + GetScalarRange( range ); + int min = 0;//range[0]; + int max = 6000;//range[1]; + _mBarSlices = new mBarRange( panel, 70, 65 ); + _mBarSlices->SetMin( 0 ); + _mBarSlices->SetStart( 0 ); + _mBarSlices->SetOrientation( true ); + _mBarSlices->setActiveStateTo( true ); + _mBarSlices->setVisibleLabels( true ); + _mBarSlices->setDeviceEndMargin( 10 ); + _mBarSlices->setDeviceBlitStart( 10, 10 ); + _mBarSlices->setIfWithActualDrawed( false ); + _mBarSlices->setRepresentedValues( min, max ); + _mBarSlices->SetStart( min ); + _mBarSlices->SetEnd( max ); + //DFCH -- End BarSlices wxString lst2D3D[2]; - lst2D3D[0]=_T("2D circle"); - lst2D3D[1]=_T("3D sphere"); + lst2D3D[0]=_T("2D"); + lst2D3D[1]=_T("3D"); _rb2D3D = new wxRadioBox(panel, -1, _T("2D / 3D"), wxDefaultPosition, wxSize(270,45), 2 , lst2D3D, 2, wxRA_SPECIFY_COLS); _rb2D3D->SetSelection(1); @@ -53,22 +70,32 @@ wxManualPaintPanel::wxManualPaintPanel(wxWindow * parent) wxButton *btnUndo = new wxButton( panel, -1, _T("Undo")); btnUndo->Disable(); - Connect(_sldBrushSize->GetId() , wxEVT_SCROLL_THUMBRELEASE , (wxObjectEventFunction) &wxManualPaintPanel::OnBrushSize); + Connect(_sldBrushSize->GetId() , wxEVT_SCROLL_THUMBRELEASE , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) (&wxManualPaintPanel::OnBrushSize)); + + Connect(_sldGrayLevel->GetId() , wxEVT_SCROLL_THUMBRELEASE , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) &wxManualPaintPanel::OnSldGrayLevel); + Connect(_graylevelCtrl->GetId() , wxEVT_COMMAND_TEXT_UPDATED , (wxObjectEventFunction)(void (wxPanel::*)(wxCommandEvent&)) &wxManualPaintPanel::OnCtrTxtGrayLevel); + + Connect(_sldToleranceFill->GetId() , wxEVT_SCROLL_THUMBRELEASE , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) &wxManualPaintPanel::OnSldToleranceFill); + Connect(_tolerancefillCtrl->GetId() , wxEVT_COMMAND_TEXT_UPDATED , (wxObjectEventFunction)(void (wxPanel::*)(wxCommandEvent&)) &wxManualPaintPanel::OnCtrTxtToleranceFill); + + Connect(_sldDistanceFill->GetId() , wxEVT_SCROLL_THUMBRELEASE , (wxObjectEventFunction)(void (wxPanel::*)(wxScrollEvent&)) &wxManualPaintPanel::OnSldDistanceFill); + Connect(_distancefillCtrl->GetId() , wxEVT_COMMAND_TEXT_UPDATED , (wxObjectEventFunction)(void (wxPanel::*)(wxCommandEvent&)) &wxManualPaintPanel::OnCtrTxtDistanceFill); - Connect(_sldGrayLevel->GetId() , wxEVT_SCROLL_THUMBRELEASE , (wxObjectEventFunction) &wxManualPaintPanel::OnSldGrayLevel); - Connect(_graylevelCtrl->GetId() , wxEVT_COMMAND_TEXT_UPDATED , (wxObjectEventFunction) &wxManualPaintPanel::OnCtrTxtGrayLevel); + Connect(_rb2D3D->GetId() , wxEVT_COMMAND_RADIOBOX_SELECTED , (wxObjectEventFunction)(void (wxPanel::*)(wxCommandEvent&)) &wxManualPaintPanel::On2D3D); + Connect(_rbBrushForm->GetId() , wxEVT_COMMAND_RADIOBOX_SELECTED , (wxObjectEventFunction)(void (wxPanel::*)(wxCommandEvent&)) &wxManualPaintPanel::OnBrushForm); + Connect(_rbBrushTool->GetId() , wxEVT_COMMAND_RADIOBOX_SELECTED , (wxObjectEventFunction)(void (wxPanel::*)(wxCommandEvent&)) &wxManualPaintPanel::OnBrushTool); + Connect(btnCopy->GetId() , wxEVT_COMMAND_BUTTON_CLICKED , (wxObjectEventFunction)(void (wxPanel::*)(wxCommandEvent&)) &wxManualPaintPanel::OnCopy); + Connect(btnUndo->GetId() , wxEVT_COMMAND_BUTTON_CLICKED , (wxObjectEventFunction)(void (wxPanel::*)(wxCommandEvent&)) &wxManualPaintPanel::OnUndo); - Connect(_sldToleranceFill->GetId() , wxEVT_SCROLL_THUMBRELEASE , (wxObjectEventFunction) &wxManualPaintPanel::OnSldToleranceFill); - Connect(_tolerancefillCtrl->GetId() , wxEVT_COMMAND_TEXT_UPDATED , (wxObjectEventFunction) &wxManualPaintPanel::OnCtrTxtToleranceFill); + Connect(_mBarSlices->GetId(),wxEVT_TSBAR,(wxObjectEventFunction) (wxCommandEventFunction) &wxManualPaintPanel::onBarrange ); +// Connect(modBarRange->GetId(),98765,(wxObjectEventFunction) (wxCommandEventFunction) &wxWidgetSliderMinMax::onActualChange_Bar ); + Connect(_mBarSlices->GetId(),wxEVT_TSBAR_ACTUAL,(wxObjectEventFunction) (wxCommandEventFunction) &wxManualPaintPanel::onActualChange_Bar ); + Connect(_mBarSlices->GetId(),wxEVT_TSBAR_START,(wxObjectEventFunction) (wxCommandEventFunction) &wxManualPaintPanel::onStartChange_Bar ); + Connect(_mBarSlices->GetId(),wxEVT_TSBAR_END,(wxObjectEventFunction) (wxCommandEventFunction) &wxManualPaintPanel::onEndChange_Bar ); + Connect(_mBarSlices->GetId(),wxEVT_SELECTION_END,(wxObjectEventFunction) (wxCommandEventFunction) &wxManualPaintPanel::onSelectionEnd ); + Connect(_mBarSlices->GetId(),wxEVT_TSBAR_MOVED,(wxObjectEventFunction) (wxCommandEventFunction) &wxManualPaintPanel::onMovedBar ); - Connect(_sldDistanceFill->GetId() , wxEVT_SCROLL_THUMBRELEASE , (wxObjectEventFunction) &wxManualPaintPanel::OnSldDistanceFill); - Connect(_distancefillCtrl->GetId() , wxEVT_COMMAND_TEXT_UPDATED , (wxObjectEventFunction) &wxManualPaintPanel::OnCtrTxtDistanceFill); - Connect(_rb2D3D->GetId() , wxEVT_COMMAND_RADIOBOX_SELECTED , (wxObjectEventFunction) &wxManualPaintPanel::On2D3D); - Connect(_rbBrushForm->GetId() , wxEVT_COMMAND_RADIOBOX_SELECTED , (wxObjectEventFunction) &wxManualPaintPanel::OnBrushForm); - Connect(_rbBrushTool->GetId() , wxEVT_COMMAND_RADIOBOX_SELECTED , (wxObjectEventFunction) &wxManualPaintPanel::OnBrushTool); - Connect(btnCopy->GetId() , wxEVT_COMMAND_BUTTON_CLICKED , (wxObjectEventFunction) &wxManualPaintPanel::OnCopy); - Connect(btnUndo->GetId() , wxEVT_COMMAND_BUTTON_CLICKED , (wxObjectEventFunction) &wxManualPaintPanel::OnUndo); wxFlexGridSizer *sizer1 = new wxFlexGridSizer(1); @@ -76,33 +103,39 @@ wxManualPaintPanel::wxManualPaintPanel(wxWindow * parent) sizer1->Add(tittleText); sizer1->Add(new wxStaticText(panel,-1,_T(" "))); - sizer1->Add(txtGrayLevel); + sizer1->Add(_rbBrushTool, 1, wxGROW ); + + wxFlexGridSizer *sizerGrayLevel = new wxFlexGridSizer(2); + sizerGrayLevel->Add(txtGrayLevel); + sizerGrayLevel->Add(_graylevelCtrl); + sizer1->Add(sizerGrayLevel, 1, wxGROW); sizer1->Add(_sldGrayLevel, 1, wxGROW ); - sizer1->Add(_graylevelCtrl); + + sizer1->Add( new wxStaticText( this, -1, _T( "Selected Range" ) ), 1, wxGROW ); + sizer1->Add( _mBarSlices, 1, wxGROW ); sizer1->Add(new wxStaticText(panel,-1,_T(" "))); sizer1->Add(_rb2D3D, 1, wxGROW ); - sizer1->Add(new wxStaticText(panel,-1,_T(" "))); - sizer1->Add(_rbBrushTool, 1, wxGROW ); sizer1->Add(new wxStaticText(panel,-1,_T(" "))); - sizer1->Add(txtBrushSize); + sizer1->Add(_txtBrushSize); sizer1->Add(_sldBrushSize, 1, wxGROW ); sizer1->Add(new wxStaticText(panel,-1,_T(" "))); sizer1->Add(_rbBrushForm, 1, wxGROW ); - - sizer1->Add(new wxStaticText(panel,-1,_T(" "))); - sizer1->Add(_txtToleranceFill); + wxFlexGridSizer *sizerTolerance = new wxFlexGridSizer(2); + sizerTolerance->Add(_txtToleranceFill); + sizerTolerance->Add(_tolerancefillCtrl); + sizer1->Add( sizerTolerance ); sizer1->Add(_sldToleranceFill, 1, wxGROW ); - sizer1->Add(_tolerancefillCtrl); - sizer1->Add(new wxStaticText(panel,-1,_T(" "))); - sizer1->Add(_txtDistanceFill); + wxFlexGridSizer *sizerDistance = new wxFlexGridSizer(2); + sizerDistance->Add(_txtDistanceFill); + sizerDistance->Add(_distancefillCtrl); + sizer1->Add( sizerDistance ); sizer1->Add(_sldDistanceFill, 1, wxGROW ); - sizer1->Add(_distancefillCtrl); sizer1->Add(new wxStaticText(panel,-1,_T(" "))); @@ -195,6 +228,7 @@ void wxManualPaintPanel::OnCtrTxtToleranceFill(wxCommandEvent &event) //--------------------------------------------------------------------------- void wxManualPaintPanel::DisableControls() { + _txtBrushSize->Disable(); _sldBrushSize->Disable(); _rbBrushForm->Disable(); @@ -216,7 +250,6 @@ void wxManualPaintPanel::On2D3D(wxCommandEvent &event) //--------------------------------------------------------------------------- void wxManualPaintPanel::OnBrushForm(wxCommandEvent &event) { - printf("EED wxManualPaintPanel::OnBrushForm BrushForm=%d \n", _rbBrushForm->GetSelection()); SetBrushForm( _rbBrushForm->GetSelection() ); } @@ -224,10 +257,11 @@ void wxManualPaintPanel::OnBrushForm(wxCommandEvent &event) void wxManualPaintPanel::OnBrushTool(wxCommandEvent &event) { DisableControls(); - SetBrushTool( _rbBrushTool->GetSelection() ); + SetTool( _rbBrushTool->GetSelection() ); if (_rbBrushTool->GetSelection()==0) //Brush tool { + _txtBrushSize->Enable(); _sldBrushSize->Enable(); _rbBrushForm->Enable(); } @@ -253,3 +287,39 @@ void wxManualPaintPanel::OnCopy(wxCommandEvent &event) void wxManualPaintPanel::OnUndo(wxCommandEvent &event) { } + +//-------------------------------------------------------------------------------------------------------------------------------- +// Min-Max Barrange received events +//-------------------------------------------------------------------------------------------------------------------------------- +void wxManualPaintPanel :: onBarrange(wxCommandEvent& event) +{ +} +void wxManualPaintPanel :: onActualChange_Bar(wxCommandEvent& event) +{ + /*mbbtkSliderMinMax->bbSetOutputOutActual(modBarRange->GetActual()); + mbbtkSliderMinMax->bbSignalOutputModification(std::string("OutActual"));*/ +} +void wxManualPaintPanel :: onStartChange_Bar(wxCommandEvent& event) +{ + SetRangeMin( _mBarSlices->GetStart() ); +} + +void wxManualPaintPanel :: onEndChange_Bar(wxCommandEvent& event) +{ + SetRangeMax( _mBarSlices->GetEnd() ); +} + +void wxManualPaintPanel :: onSelectionEnd(wxCommandEvent& event) +{ +} + +void wxManualPaintPanel :: onMovedBar(wxCommandEvent& event) +{ +} + //-------------------------------------------------------------------------- + //------------------------------------------------------------------------- + //-------------------------------------------------------------------------- + //-------------------------------------------------------------------------- + + +