- wxStaticText *tittleText = new wxStaticText(panel, -1, _T(" Manual Paint"));
- _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);
- _graylevelCtrl = new wxTextCtrl(panel , -1);
- _txtToleranceFill = new wxStaticText(panel, -1, wxString(_T(" Tolerance fill ")));
- _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, 500, 1, 500, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
- _distancefillCtrl = new wxTextCtrl(panel , -1,_T("500") );
- //DFCH -- BarSlices
- int min = 0;
- int max = 100;
- _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");
- 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);
-
- wxString lstBrushForm[2];
- lstBrushForm[0]=_T("rectangle/cube");
- lstBrushForm[1]=_T("circle/sphere");
- _rbBrushForm = new wxRadioBox(panel, -1, _T("Brush form"), wxDefaultPosition, wxSize(270,45), 2 , lstBrushForm, 2, wxRA_SPECIFY_COLS);
-
- _txtToleranceFill->Disable();
- _sldToleranceFill->Disable();
- _tolerancefillCtrl->Disable();
-
- _txtDistanceFill->Disable();
- _sldDistanceFill->Disable();
- _distancefillCtrl->Disable();
-
- wxString lstBrushTool[2];
- lstBrushTool[0]=_T("Brush");
- lstBrushTool[1]=_T("Fill");
- _rbBrushTool = new wxRadioBox(panel, -1, _T("Brush tool"), wxDefaultPosition, wxSize(270,45), 2 , lstBrushTool, 2, wxRA_SPECIFY_COLS);
-
- wxButton *btnCopy = new wxButton( panel, -1, _T("Copy"));
- btnCopy->Disable();
- wxButton *btnUndo = new wxButton( panel, -1, _T("Undo"));
- btnUndo->Disable();
-
- 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(_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(_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 );
-
-
-
- wxFlexGridSizer *sizer1 = new wxFlexGridSizer(1);
-
- sizer1->Add(new wxStaticText(panel,-1,_T(" ")));
- sizer1->Add(tittleText);
-
- sizer1->Add(new wxStaticText(panel,-1,_T(" ")));
- 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( 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(_txtBrushSize);
- sizer1->Add(_sldBrushSize, 1, wxGROW );
-
- sizer1->Add(new wxStaticText(panel,-1,_T(" ")));
- sizer1->Add(_rbBrushForm, 1, wxGROW );
-
- wxFlexGridSizer *sizerTolerance = new wxFlexGridSizer(2);
- sizerTolerance->Add(_txtToleranceFill);
- sizerTolerance->Add(_tolerancefillCtrl);
- sizer1->Add( sizerTolerance );
- sizer1->Add(_sldToleranceFill, 1, wxGROW );
+ wxStaticText *tittleText = new wxStaticText( this, -1,
+ _T(" Manual Paint") );
+ //Title
+ sizer->Add( tittleText );
+ //giving some blank spaces
+ sizer->Add( new wxStaticText( this, -1, _T(" key A : Enable/Disable ") ) );
+
+ this->ConfigureActiveCBButton( );
+ this->ConfigureBrushToolRadioButton( );
+ this->Configure2D3DRadioButton( );
+ this->ConfigureBrushFormRadioButton( );
+ this->ConfigureRangeBar( );
+ this->ConfigureGrayLevelSld( );
+ this->ConfigureBrushSizeSld( );
+ this->ConfigureDistanceFillSld( );
+ this->ConfigureTolFillSld( );
+ this->ConfigureEditButtons( );
+
+ //Buttons
+ wxStaticText *editButtonsText = new wxStaticText( this, -1,
+ _T("Edit Buttons") );
+ this->_buttonsSizer = new wxFlexGridSizer( 4 );
+ this->_buttonsSizer->Add( _btnUndo, 1, wxGROW );
+ this->_buttonsSizer->Add( _btnRedo, 1, wxGROW );
+ this->_buttonsSizer->Add( _btnCopy, 1, wxGROW );
+
+ this->_gConfigSizer = new wxFlexGridSizer( 1 );
+ //BrushTool Radio Button
+ //giving blank space
+ this->_gConfigSizer->Add( new wxStaticText( this, -1, _T(" ") ) );
+ //end of blank space
+ this->_gConfigSizer->Add( _rbBrushTool, 1, wxGROW );
+ //2D/3D Radio Button
+ this->_gConfigSizer->Add( _rb2D3D, 1, wxGROW );
+ //RangeBar
+ this->_gConfigSizer->Add(
+ new wxStaticText( this, -1, _T( "Select Range" ) ), 1, wxGROW );
+ this->_gConfigSizer->Add( _mBarSlices, 1, wxGROW );
+ //GrayLevel Slider
+ this->_gConfigSizer->Add( _txtGrayLevel );
+
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
+ wxFlexGridSizer *sizerGrayLevel = new wxFlexGridSizer( 2, wxHORIZONTAL );
+#else
+ wxFlexGridSizer *sizerGrayLevel = new wxFlexGridSizer( 2 );
+#endif
+
+ sizerGrayLevel->Add( _sldGrayLevel, 1, wxGROW );
+ sizerGrayLevel->Add( _graylevelCtrl, 1,
+ wxALIGN_BOTTOM | wxALIGN_LEFT | wxALL, 5 );
+ this->_gConfigSizer->Add( sizerGrayLevel, 1, wxGROW );
+
+ //Brush
+ this->_brushSizer = new wxFlexGridSizer( 1 );
+ //giving blank space
+ this->_brushSizer->Add( new wxStaticText( this, -1, _T(" ") ) );
+ //end of blank space
+ this->_brushSizer->Add(
+ new wxStaticText( this, -1, _T("Brush Settings") ) );
+ //BrushSize Slider
+ this->_brushSizer->Add( _txtBrushSize );
+
+//EED 2017-09-16 Migration wxWidgets 2.8 to 3.0
+#if wxMAJOR_VERSION <= 2
+ wxFlexGridSizer *sizersdlBrushSize = new wxFlexGridSizer( 2, wxHORIZONTAL );
+#else
+ wxFlexGridSizer *sizersdlBrushSize = new wxFlexGridSizer( 2 );
+#endif
+
+ sizersdlBrushSize->Add( _sldBrushSize, 1, wxGROW );
+ sizersdlBrushSize->Add( _BrushSizeCtrl, 1,
+ wxALIGN_BOTTOM | wxALIGN_LEFT | wxALL, 5 );
+ this->_brushSizer->Add( sizersdlBrushSize );
+ //BrushForm RadioButton
+ this->_brushSizer->Add( _rbBrushForm, 1, wxGROW );
+ //Fill
+ this->_FillSizer = new wxFlexGridSizer( 1 );
+ //giving blank space
+ this->_FillSizer->Add( new wxStaticText( this, -1, _T(" ") ) );
+ //end of blank space
+ this->_FillSizer->Add( new wxStaticText( this, -1, _T("Fill Settings") ) );
+ //ToleranceFill
+ this->_FillSizer->Add( _txtToleranceFill );
+ wxFlexGridSizer *sizerTolerance = new wxFlexGridSizer( 2 );
+ sizerTolerance->Add( _sldToleranceFill, 1, wxGROW );
+ sizerTolerance->Add( _tolerancefillCtrl, 1,
+ wxALIGN_BOTTOM | wxALIGN_LEFT | wxALL, 5 );
+ this->_FillSizer->Add( sizerTolerance, 1, wxGROW );
+ //Distance Fill
+ this->_FillSizer->Add( _txtDistanceFill );
+ wxFlexGridSizer *sizerDistance = new wxFlexGridSizer( 2 );
+ sizerDistance->Add( _sldDistanceFill, 1, wxGROW );
+ sizerDistance->Add( _distancefillCtrl, 1,
+ wxALIGN_BOTTOM | wxALIGN_LEFT | wxALL, 5 );
+ this->_FillSizer->Add( sizerDistance );
+
+ sizer->Add( _activeCB );
+ sizer->Add( editButtonsText );
+ sizer->Add( _buttonsSizer );
+ sizer->Add( _gConfigSizer );
+ sizer->Add( _brushSizer );
+ sizer->Add( _FillSizer );
+
+ this->ConnectComponents( ); //DFCH
+ this->_FillSizer->Show( false );
+
+ this->SetSizer( sizer );
+ this->SetAutoLayout( true );
+ this->Layout( );