Loading change_log.txt +17 −0 Original line number Diff line number Diff line Loading @@ -5,6 +5,23 @@ Started 2007-June-11 Please add newer entries at the top, list the date and your name with email address. 2008-Apr-28 UPDATE Dick Hollenbeck <dick@softplc.com> ================================================================================ +pcbnew * Layer names were not being set into the htoolbar listbox properly if the BOARD was loaded via the command line as happens when kicad chain loads pcbnew. Also, layer names were not being set if a second board was loaded that had the same number of layers as the previous board. The solution was to comment out the listbox rebuild test in WinEDAChoiceBox* WinEDA_PcbFrame::ReCreateLayerBox( WinEDA_Toolbar* parent ) * files.cpp: added Clear_Pcb( false ) to LoadOnePcbFile() and call it if not appending. This way a user can get into the file selection dialog and still abort (change his mind) without losing the current board. Removed calls to Clear_Pcb() where LoadOnePcbFile() would now do that. * edtxtmod.cpp: fixed the drawing relics when moving and rotating module texts. 2008-Apr-21 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr> ================================================================================ +pcbnew Loading pcbnew/controle.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -522,6 +522,7 @@ void WinEDA_BasePcbFrame::GeneralControle( wxDC* DC, wxPoint Mouse ) if( delta.x <= 0 ) delta.x = 1; if( delta.y <= 0 ) delta.y = 1; Loading pcbnew/dialog_edit_mod_text.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -38,7 +38,7 @@ #include "dialog_edit_mod_text.h" extern wxPoint MoveVector; // Move vector for move edge, imported from dialog_edit mod_text.cpp extern wxPoint MoveVector; // Move vector for move edge, imported from edtxtmod.cpp ////@begin XPM images ////@end XPM images Loading pcbnew/dialog_general_options.cpp +333 −208 Original line number Diff line number Diff line ///////////////////////////////////////////////////////////////////////////// // Name: dialog_general_options.cpp // Purpose: // Author: jean-pierre Charras Loading Loading @@ -40,15 +41,16 @@ ////@end XPM images /*****************************************************************/ void WinEDA_PcbFrame::OnSelectOptionToolbar( wxCommandEvent& event ) /*****************************************************************/ /* Mises a jour de differentes variables de gestion d'options apres action sur le toolbar d'options * le toolbar d'options */ { int id = event.GetId(); wxClientDC dc( DrawPanel ); DrawPanel->CursorOff( &dc ); Loading Loading @@ -76,6 +78,7 @@ wxClientDC dc(DrawPanel); case ID_TB_OPTIONS_SELECT_UNIT_MM: g_UnitMetric = MILLIMETRE; case ID_TB_OPTIONS_SELECT_UNIT_INCH: if( id == ID_TB_OPTIONS_SELECT_UNIT_INCH ) g_UnitMetric = INCHES; Loading Loading @@ -132,12 +135,14 @@ wxClientDC dc(DrawPanel); } { wxSizeEvent SizeEv( GetSize() ); OnSize( SizeEv ); } break; default: DisplayError(this, wxT("WinEDA_PcbFrame::OnSelectOptionToolbar error \n (event not handled!)")); DisplayError( this, wxT( "WinEDA_PcbFrame::OnSelectOptionToolbar error \n (event not handled!)" ) ); break; } Loading Loading @@ -175,8 +180,14 @@ WinEDA_PcbGeneralOptionsFrame::WinEDA_PcbGeneralOptionsFrame( ) { } WinEDA_PcbGeneralOptionsFrame::WinEDA_PcbGeneralOptionsFrame( WinEDA_PcbFrame* parent, wxDC * DC, wxWindowID id, const wxString& caption, const wxPoint& pos, const wxSize& size, long style ) WinEDA_PcbGeneralOptionsFrame::WinEDA_PcbGeneralOptionsFrame( WinEDA_PcbFrame* parent, wxDC* DC, wxWindowID id, const wxString& caption, const wxPoint& pos, const wxSize& size, long style ) { m_Parent = parent; m_DC = DC; Loading Loading @@ -205,11 +216,17 @@ wxString timevalue; m_Track_DoubleSegm_Ctrl->SetValue( g_TwoSegmentTrackBuild ); } /*! * WinEDA_PcbGeneralOptionsFrame creator */ bool WinEDA_PcbGeneralOptionsFrame::Create( wxWindow* parent, wxWindowID id, const wxString& caption, const wxPoint& pos, const wxSize& size, long style ) bool WinEDA_PcbGeneralOptionsFrame::Create( wxWindow* parent, wxWindowID id, const wxString& caption, const wxPoint& pos, const wxSize& size, long style ) { ////@begin WinEDA_PcbGeneralOptionsFrame member initialisation m_PolarDisplay = NULL; Loading @@ -228,6 +245,7 @@ bool WinEDA_PcbGeneralOptionsFrame::Create( wxWindow* parent, wxWindowID id, con m_Track_DoubleSegm_Ctrl = NULL; m_MagneticPadOptCtrl = NULL; m_MagneticTrackOptCtrl = NULL; ////@end WinEDA_PcbGeneralOptionsFrame member initialisation ////@begin WinEDA_PcbGeneralOptionsFrame creation Loading @@ -240,11 +258,13 @@ bool WinEDA_PcbGeneralOptionsFrame::Create( wxWindow* parent, wxWindowID id, con GetSizer()->SetSizeHints( this ); } Centre(); ////@end WinEDA_PcbGeneralOptionsFrame creation SetFont( *g_DialogFont ); return true; } /*! * Control creation for WinEDA_PcbGeneralOptionsFrame */ Loading @@ -257,135 +277,224 @@ void WinEDA_PcbGeneralOptionsFrame::CreateControls() WinEDA_PcbGeneralOptionsFrame* itemDialog1 = this; wxBoxSizer* itemBoxSizer2 = new wxBoxSizer( wxHORIZONTAL ); itemDialog1->SetSizer( itemBoxSizer2 ); wxBoxSizer* itemBoxSizer3 = new wxBoxSizer( wxVERTICAL ); itemBoxSizer2->Add( itemBoxSizer3, 0, wxGROW | wxALL, 5 ); wxArrayString m_PolarDisplayStrings; m_PolarDisplayStrings.Add( _( "No Display" ) ); m_PolarDisplayStrings.Add( _( "Display" ) ); m_PolarDisplay = new wxRadioBox( itemDialog1, ID_RADIOBOX, _("Display Polar Coord"), wxDefaultPosition, wxDefaultSize, m_PolarDisplayStrings, 1, wxRA_SPECIFY_COLS ); m_PolarDisplay = new wxRadioBox( itemDialog1, ID_RADIOBOX, _( "Display Polar Coord" ), wxDefaultPosition, wxDefaultSize, m_PolarDisplayStrings, 1, wxRA_SPECIFY_COLS ); m_PolarDisplay->SetSelection( 0 ); itemBoxSizer3->Add( m_PolarDisplay, 0, wxALIGN_LEFT | wxALL, 5 ); wxArrayString m_BoxUnitsStrings; m_BoxUnitsStrings.Add( _( "Inches" ) ); m_BoxUnitsStrings.Add( _( "millimeters" ) ); m_BoxUnits = new wxRadioBox( itemDialog1, ID_RADIOBOX1, _("Units"), wxDefaultPosition, wxDefaultSize, m_BoxUnitsStrings, 1, wxRA_SPECIFY_COLS ); m_BoxUnits = new wxRadioBox( itemDialog1, ID_RADIOBOX1, _( "Units" ), wxDefaultPosition, wxDefaultSize, m_BoxUnitsStrings, 1, wxRA_SPECIFY_COLS ); m_BoxUnits->SetSelection( 0 ); itemBoxSizer3->Add( m_BoxUnits, 0, wxALIGN_LEFT | wxALL, 5 ); wxArrayString m_CursorShapeStrings; m_CursorShapeStrings.Add( _( "Small" ) ); m_CursorShapeStrings.Add( _( "Big" ) ); m_CursorShape = new wxRadioBox( itemDialog1, ID_RADIOBOX2, _("Cursor"), wxDefaultPosition, wxDefaultSize, m_CursorShapeStrings, 1, wxRA_SPECIFY_COLS ); m_CursorShape = new wxRadioBox( itemDialog1, ID_RADIOBOX2, _( "Cursor" ), wxDefaultPosition, wxDefaultSize, m_CursorShapeStrings, 1, wxRA_SPECIFY_COLS ); m_CursorShape->SetSelection( 0 ); itemBoxSizer3->Add( m_CursorShape, 0, wxALIGN_LEFT | wxALL, 5 ); wxBoxSizer* itemBoxSizer7 = new wxBoxSizer( wxVERTICAL ); itemBoxSizer2->Add( itemBoxSizer7, 0, wxGROW | wxALL, 5 ); wxStaticBox* itemStaticBoxSizer8Static = new wxStaticBox(itemDialog1, wxID_ANY, _("Number of Layers:")); wxStaticBoxSizer* itemStaticBoxSizer8 = new wxStaticBoxSizer(itemStaticBoxSizer8Static, wxVERTICAL); wxStaticBox* itemStaticBoxSizer8Static = new wxStaticBox( itemDialog1, wxID_ANY, _( "Number of Layers:" ) ); wxStaticBoxSizer* itemStaticBoxSizer8 = new wxStaticBoxSizer( itemStaticBoxSizer8Static, wxVERTICAL ); itemBoxSizer7->Add( itemStaticBoxSizer8, 0, wxALIGN_CENTER_HORIZONTAL | wxALL, 5 ); m_LayerNumber = new wxSpinCtrl( itemDialog1, ID_SPINCTRL1, _T("1"), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 1, 16, 1 ); m_LayerNumber = new wxSpinCtrl( itemDialog1, ID_SPINCTRL1, _T( "1" ), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 1, 16, 1 ); itemStaticBoxSizer8->Add( m_LayerNumber, 0, wxALIGN_CENTER_HORIZONTAL | wxALL, 5 ); wxStaticBox* itemStaticBoxSizer10Static = new wxStaticBox(itemDialog1, wxID_ANY, _("Max Links:")); wxStaticBoxSizer* itemStaticBoxSizer10 = new wxStaticBoxSizer(itemStaticBoxSizer10Static, wxVERTICAL); wxStaticBox* itemStaticBoxSizer10Static = new wxStaticBox( itemDialog1, wxID_ANY, _( "Max Links:" ) ); wxStaticBoxSizer* itemStaticBoxSizer10 = new wxStaticBoxSizer( itemStaticBoxSizer10Static, wxVERTICAL ); itemBoxSizer7->Add( itemStaticBoxSizer10, 0, wxALIGN_CENTER_HORIZONTAL | wxALL, 5 ); m_MaxShowLinks = new wxSpinCtrl( itemDialog1, ID_SPINCTRL2, _T("1"), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 1, 5, 1 ); m_MaxShowLinks = new wxSpinCtrl( itemDialog1, ID_SPINCTRL2, _T( "1" ), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 1, 5, 1 ); itemStaticBoxSizer10->Add( m_MaxShowLinks, 0, wxALIGN_CENTER_HORIZONTAL | wxALL, 5 ); wxStaticBox* itemStaticBoxSizer12Static = new wxStaticBox(itemDialog1, wxID_ANY, _("Auto Save (minuts):")); wxStaticBoxSizer* itemStaticBoxSizer12 = new wxStaticBoxSizer(itemStaticBoxSizer12Static, wxVERTICAL); wxStaticBox* itemStaticBoxSizer12Static = new wxStaticBox( itemDialog1, wxID_ANY, _( "Auto Save (minuts):" ) ); wxStaticBoxSizer* itemStaticBoxSizer12 = new wxStaticBoxSizer( itemStaticBoxSizer12Static, wxVERTICAL ); itemBoxSizer7->Add( itemStaticBoxSizer12, 0, wxALIGN_CENTER_HORIZONTAL | wxALL, 5 ); m_SaveTime = new wxSpinCtrl( itemDialog1, ID_SPINCTRL3, _T("0"), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 60, 0 ); m_SaveTime = new wxSpinCtrl( itemDialog1, ID_SPINCTRL3, _T( "0" ), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 60, 0 ); itemStaticBoxSizer12->Add( m_SaveTime, 0, wxALIGN_CENTER_HORIZONTAL | wxALL, 5 ); wxBoxSizer* itemBoxSizer14 = new wxBoxSizer( wxVERTICAL ); itemBoxSizer2->Add( itemBoxSizer14, 0, wxGROW | wxALL, 5 ); wxStaticBox* itemStaticBoxSizer15Static = new wxStaticBox(itemDialog1, wxID_ANY, _("Options:")); wxStaticBoxSizer* itemStaticBoxSizer15 = new wxStaticBoxSizer(itemStaticBoxSizer15Static, wxVERTICAL); wxStaticBox* itemStaticBoxSizer15Static = new wxStaticBox( itemDialog1, wxID_ANY, _( "Options:" ) ); wxStaticBoxSizer* itemStaticBoxSizer15 = new wxStaticBoxSizer( itemStaticBoxSizer15Static, wxVERTICAL ); itemBoxSizer14->Add( itemStaticBoxSizer15, 0, wxALIGN_CENTER_HORIZONTAL | wxALL, 5 ); m_DrcOn = new wxCheckBox( itemDialog1, ID_CHECKBOX, _("Drc ON"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_DrcOn = new wxCheckBox( itemDialog1, ID_CHECKBOX, _( "Drc ON" ), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_DrcOn->SetValue( false ); m_DrcOn->SetForegroundColour( wxColour( 198, 0, 0 ) ); itemStaticBoxSizer15->Add( m_DrcOn, 0, wxALIGN_LEFT | wxALL, 5 ); m_ShowGlobalRatsnest = new wxCheckBox( itemDialog1, ID_CHECKBOX1, _("Show Ratsnest"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_ShowGlobalRatsnest = new wxCheckBox( itemDialog1, ID_CHECKBOX1, _( "Show Ratsnest" ), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_ShowGlobalRatsnest->SetValue( false ); itemStaticBoxSizer15->Add( m_ShowGlobalRatsnest, 0, wxALIGN_LEFT | wxALL, 5 ); m_ShowModuleRatsnest = new wxCheckBox( itemDialog1, ID_CHECKBOX2, _("Show Mod Ratsnest"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_ShowModuleRatsnest = new wxCheckBox( itemDialog1, ID_CHECKBOX2, _( "Show Mod Ratsnest" ), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_ShowModuleRatsnest->SetValue( false ); itemStaticBoxSizer15->Add( m_ShowModuleRatsnest, 0, wxALIGN_LEFT | wxALL, 5 ); m_TrackAutodel = new wxCheckBox( itemDialog1, ID_CHECKBOX3, _("Tracks Auto Del"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_TrackAutodel = new wxCheckBox( itemDialog1, ID_CHECKBOX3, _( "Tracks Auto Del" ), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_TrackAutodel->SetValue( false ); itemStaticBoxSizer15->Add( m_TrackAutodel, 0, wxALIGN_LEFT | wxALL, 5 ); m_Track_45_Only_Ctrl = new wxCheckBox( itemDialog1, ID_CHECKBOX4, _("Track 45 Only"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_Track_45_Only_Ctrl = new wxCheckBox( itemDialog1, ID_CHECKBOX4, _( "Track 45 Only" ), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_Track_45_Only_Ctrl->SetValue( false ); itemStaticBoxSizer15->Add( m_Track_45_Only_Ctrl, 0, wxALIGN_LEFT | wxALL, 5 ); m_Segments_45_Only_Ctrl = new wxCheckBox( itemDialog1, ID_CHECKBOX5, _("Segments 45 Only"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_Segments_45_Only_Ctrl = new wxCheckBox( itemDialog1, ID_CHECKBOX5, _( "Segments 45 Only" ), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_Segments_45_Only_Ctrl->SetValue( false ); itemStaticBoxSizer15->Add( m_Segments_45_Only_Ctrl, 0, wxALIGN_LEFT | wxALL, 5 ); m_AutoPANOpt = new wxCheckBox( itemDialog1, ID_CHECKBOX6, _("Auto PAN"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_AutoPANOpt = new wxCheckBox( itemDialog1, ID_CHECKBOX6, _( "Auto PAN" ), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_AutoPANOpt->SetValue( false ); m_AutoPANOpt->SetForegroundColour( wxColour( 0, 0, 255 ) ); itemStaticBoxSizer15->Add( m_AutoPANOpt, 0, wxALIGN_LEFT | wxALL, 5 ); m_Track_DoubleSegm_Ctrl = new wxCheckBox( itemDialog1, ID_CHECKBOX7, _("Double Segm Track"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_Track_DoubleSegm_Ctrl = new wxCheckBox( itemDialog1, ID_CHECKBOX7, _( "Double Segm Track" ), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_Track_DoubleSegm_Ctrl->SetValue( false ); m_Track_DoubleSegm_Ctrl->SetForegroundColour( wxColour( 0, 144, 0 ) ); itemStaticBoxSizer15->Add( m_Track_DoubleSegm_Ctrl, 0, wxALIGN_LEFT | wxALL, 5 ); wxBoxSizer* itemBoxSizer24 = new wxBoxSizer( wxVERTICAL ); itemBoxSizer2->Add( itemBoxSizer24, 0, wxALIGN_TOP | wxALL, 5 ); wxArrayString m_MagneticPadOptCtrlStrings; m_MagneticPadOptCtrlStrings.Add( _( "Never" ) ); m_MagneticPadOptCtrlStrings.Add( _( "When creating tracks" ) ); m_MagneticPadOptCtrlStrings.Add( _( "Always" ) ); m_MagneticPadOptCtrl = new wxRadioBox( itemDialog1, ID_RADIOBOX4, _("Magnetic Pads"), wxDefaultPosition, wxDefaultSize, m_MagneticPadOptCtrlStrings, 1, wxRA_SPECIFY_COLS ); m_MagneticPadOptCtrl = new wxRadioBox( itemDialog1, ID_RADIOBOX4, _( "Magnetic Pads" ), wxDefaultPosition, wxDefaultSize, m_MagneticPadOptCtrlStrings, 1, wxRA_SPECIFY_COLS ); m_MagneticPadOptCtrl->SetSelection( 0 ); if( WinEDA_PcbGeneralOptionsFrame::ShowToolTips() ) m_MagneticPadOptCtrl->SetToolTip(_("control the capture of the pcb cursor when the mouse cursor enters a pad area")); m_MagneticPadOptCtrl->SetToolTip( _( "control the capture of the pcb cursor when the mouse cursor enters a pad area" ) ); itemBoxSizer24->Add( m_MagneticPadOptCtrl, 0, wxGROW | wxALL, 5 ); wxArrayString m_MagneticTrackOptCtrlStrings; m_MagneticTrackOptCtrlStrings.Add( _( "Never" ) ); m_MagneticTrackOptCtrlStrings.Add( _( "When creating tracks" ) ); m_MagneticTrackOptCtrlStrings.Add( _( "Always" ) ); m_MagneticTrackOptCtrl = new wxRadioBox( itemDialog1, ID_RADIOBOX3, _("Magnetic Tracks"), wxDefaultPosition, wxDefaultSize, m_MagneticTrackOptCtrlStrings, 1, wxRA_SPECIFY_COLS ); m_MagneticTrackOptCtrl = new wxRadioBox( itemDialog1, ID_RADIOBOX3, _( "Magnetic Tracks" ), wxDefaultPosition, wxDefaultSize, m_MagneticTrackOptCtrlStrings, 1, wxRA_SPECIFY_COLS ); m_MagneticTrackOptCtrl->SetSelection( 0 ); if( WinEDA_PcbGeneralOptionsFrame::ShowToolTips() ) m_MagneticTrackOptCtrl->SetToolTip(_("control the capture of the pcb cursor when the mouse cursor enters a track")); m_MagneticTrackOptCtrl->SetToolTip( _( "control the capture of the pcb cursor when the mouse cursor enters a track" ) ); itemBoxSizer24->Add( m_MagneticTrackOptCtrl, 0, wxGROW | wxALL, 5 ); wxButton* itemButton27 = new wxButton( itemDialog1, wxID_OK, _("&OK"), wxDefaultPosition, wxDefaultSize, 0 ); wxButton* itemButton27 = new wxButton( itemDialog1, wxID_OK, _( "&OK" ), wxDefaultPosition, wxDefaultSize, 0 ); itemButton27->SetForegroundColour( wxColour( 221, 0, 0 ) ); itemBoxSizer24->Add( itemButton27, 0, wxGROW | wxALL, 5 ); wxButton* itemButton28 = new wxButton( itemDialog1, wxID_CANCEL, _("&Cancel"), wxDefaultPosition, wxDefaultSize, 0 ); wxButton* itemButton28 = new wxButton( itemDialog1, wxID_CANCEL, _( "&Cancel" ), wxDefaultPosition, wxDefaultSize, 0 ); itemButton28->SetForegroundColour( wxColour( 0, 0, 255 ) ); itemBoxSizer24->Add( itemButton28, 0, wxGROW | wxALL, 5 ); // Set validators m_MagneticPadOptCtrl->SetValidator( wxGenericValidator( &g_MagneticPadOption ) ); m_MagneticTrackOptCtrl->SetValidator( wxGenericValidator( &g_MagneticTrackOption ) ); ////@end WinEDA_PcbGeneralOptionsFrame content construction } /*! * Should we show tooltips? */ Loading @@ -395,6 +504,7 @@ bool WinEDA_PcbGeneralOptionsFrame::ShowToolTips() return true; } /*! * Get bitmap resources */ Loading @@ -405,9 +515,11 @@ wxBitmap WinEDA_PcbGeneralOptionsFrame::GetBitmapResource( const wxString& name ////@begin WinEDA_PcbGeneralOptionsFrame bitmap retrieval wxUnusedVar( name ); return wxNullBitmap; ////@end WinEDA_PcbGeneralOptionsFrame bitmap retrieval } /*! * Get icon resources */ Loading @@ -418,9 +530,11 @@ wxIcon WinEDA_PcbGeneralOptionsFrame::GetIconResource( const wxString& name ) ////@begin WinEDA_PcbGeneralOptionsFrame icon retrieval wxUnusedVar( name ); return wxNullIcon; ////@end WinEDA_PcbGeneralOptionsFrame icon retrieval } /*! * wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CANCEL */ Loading @@ -430,8 +544,11 @@ void WinEDA_PcbGeneralOptionsFrame::OnCancelClick( wxCommandEvent& event ) ////@begin wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_OK in WinEDA_PcbGeneralOptionsFrame. // Before editing this code, remove the block markers. event.Skip(); ////@end wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_OK in WinEDA_PcbGeneralOptionsFrame. } /*! * wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_OK */ Loading @@ -439,14 +556,15 @@ void WinEDA_PcbGeneralOptionsFrame::OnCancelClick( wxCommandEvent& event ) void WinEDA_PcbGeneralOptionsFrame::OnOkClick( wxCommandEvent& event ) { AcceptPcbOptions( event ); ////@begin wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_OK in WinEDA_PcbGeneralOptionsFrame. // Before editing this code, remove the block markers. event.Skip(); ////@end wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_OK in WinEDA_PcbGeneralOptionsFrame. } /**************************************************************************/ void WinEDA_PcbGeneralOptionsFrame::AcceptPcbOptions( wxCommandEvent& event ) /**************************************************************************/ Loading @@ -457,7 +575,8 @@ int ii; (m_PolarDisplay->GetSelection() == 0) ? FALSE : TRUE; ii = g_UnitMetric; g_UnitMetric = (m_BoxUnits->GetSelection() == 0) ? 0 : 1; if ( ii != g_UnitMetric ) m_Parent->ReCreateAuxiliaryToolbar(); if( ii != g_UnitMetric ) m_Parent->ReCreateAuxiliaryToolbar(); g_CursorShape = m_CursorShape->GetSelection(); g_TimeOut = 60 * m_SaveTime->GetValue(); Loading @@ -484,8 +603,7 @@ int ii; } enum id_optpcb { enum id_optpcb { ID_ACCEPT_OPT = 1000, ID_CANCEL_OPT }; Loading @@ -499,14 +617,15 @@ void WinEDA_PcbFrame::InstallPcbOptionsFrame(const wxPoint & pos, wxDC* DC, int id ) /*****************************************************************/ { switch( id ) { case ID_PCB_TRACK_SIZE_SETUP: { WinEDA_PcbTracksDialog* OptionsFrame = new WinEDA_PcbTracksDialog( this ); OptionsFrame->ShowModal(); OptionsFrame->Destroy(); OptionsFrame->ShowModal(); OptionsFrame->Destroy(); } break; Loading @@ -514,7 +633,9 @@ void WinEDA_PcbFrame::InstallPcbOptionsFrame(const wxPoint & pos, { WinEDA_GraphicItemsOptionsDialog* OptionsFrame = new WinEDA_GraphicItemsOptionsDialog( this ); OptionsFrame->ShowModal(); OptionsFrame->Destroy(); OptionsFrame->ShowModal(); OptionsFrame->Destroy(); } break; Loading @@ -522,7 +643,9 @@ void WinEDA_PcbFrame::InstallPcbOptionsFrame(const wxPoint & pos, { WinEDA_DisplayOptionsDialog* OptionsFrame = new WinEDA_DisplayOptionsDialog( this ); OptionsFrame->ShowModal(); OptionsFrame->Destroy(); OptionsFrame->ShowModal(); OptionsFrame->Destroy(); } break; Loading @@ -530,7 +653,9 @@ void WinEDA_PcbFrame::InstallPcbOptionsFrame(const wxPoint & pos, { WinEDA_PcbGeneralOptionsFrame* OptionsFrame = new WinEDA_PcbGeneralOptionsFrame( this, DC ); OptionsFrame->ShowModal(); OptionsFrame->Destroy(); OptionsFrame->ShowModal(); OptionsFrame->Destroy(); } break; } Loading @@ -542,6 +667,6 @@ void WinEDA_ModuleEditFrame::InstallOptionsFrame(const wxPoint & pos) /*******************************************************************/ { WinEDA_GraphicItemsOptionsDialog OptionsFrame( this ); OptionsFrame.ShowModal(); } Loading
change_log.txt +17 −0 Original line number Diff line number Diff line Loading @@ -5,6 +5,23 @@ Started 2007-June-11 Please add newer entries at the top, list the date and your name with email address. 2008-Apr-28 UPDATE Dick Hollenbeck <dick@softplc.com> ================================================================================ +pcbnew * Layer names were not being set into the htoolbar listbox properly if the BOARD was loaded via the command line as happens when kicad chain loads pcbnew. Also, layer names were not being set if a second board was loaded that had the same number of layers as the previous board. The solution was to comment out the listbox rebuild test in WinEDAChoiceBox* WinEDA_PcbFrame::ReCreateLayerBox( WinEDA_Toolbar* parent ) * files.cpp: added Clear_Pcb( false ) to LoadOnePcbFile() and call it if not appending. This way a user can get into the file selection dialog and still abort (change his mind) without losing the current board. Removed calls to Clear_Pcb() where LoadOnePcbFile() would now do that. * edtxtmod.cpp: fixed the drawing relics when moving and rotating module texts. 2008-Apr-21 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr> ================================================================================ +pcbnew Loading
pcbnew/controle.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -522,6 +522,7 @@ void WinEDA_BasePcbFrame::GeneralControle( wxDC* DC, wxPoint Mouse ) if( delta.x <= 0 ) delta.x = 1; if( delta.y <= 0 ) delta.y = 1; Loading
pcbnew/dialog_edit_mod_text.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -38,7 +38,7 @@ #include "dialog_edit_mod_text.h" extern wxPoint MoveVector; // Move vector for move edge, imported from dialog_edit mod_text.cpp extern wxPoint MoveVector; // Move vector for move edge, imported from edtxtmod.cpp ////@begin XPM images ////@end XPM images Loading
pcbnew/dialog_general_options.cpp +333 −208 Original line number Diff line number Diff line ///////////////////////////////////////////////////////////////////////////// // Name: dialog_general_options.cpp // Purpose: // Author: jean-pierre Charras Loading Loading @@ -40,15 +41,16 @@ ////@end XPM images /*****************************************************************/ void WinEDA_PcbFrame::OnSelectOptionToolbar( wxCommandEvent& event ) /*****************************************************************/ /* Mises a jour de differentes variables de gestion d'options apres action sur le toolbar d'options * le toolbar d'options */ { int id = event.GetId(); wxClientDC dc( DrawPanel ); DrawPanel->CursorOff( &dc ); Loading Loading @@ -76,6 +78,7 @@ wxClientDC dc(DrawPanel); case ID_TB_OPTIONS_SELECT_UNIT_MM: g_UnitMetric = MILLIMETRE; case ID_TB_OPTIONS_SELECT_UNIT_INCH: if( id == ID_TB_OPTIONS_SELECT_UNIT_INCH ) g_UnitMetric = INCHES; Loading Loading @@ -132,12 +135,14 @@ wxClientDC dc(DrawPanel); } { wxSizeEvent SizeEv( GetSize() ); OnSize( SizeEv ); } break; default: DisplayError(this, wxT("WinEDA_PcbFrame::OnSelectOptionToolbar error \n (event not handled!)")); DisplayError( this, wxT( "WinEDA_PcbFrame::OnSelectOptionToolbar error \n (event not handled!)" ) ); break; } Loading Loading @@ -175,8 +180,14 @@ WinEDA_PcbGeneralOptionsFrame::WinEDA_PcbGeneralOptionsFrame( ) { } WinEDA_PcbGeneralOptionsFrame::WinEDA_PcbGeneralOptionsFrame( WinEDA_PcbFrame* parent, wxDC * DC, wxWindowID id, const wxString& caption, const wxPoint& pos, const wxSize& size, long style ) WinEDA_PcbGeneralOptionsFrame::WinEDA_PcbGeneralOptionsFrame( WinEDA_PcbFrame* parent, wxDC* DC, wxWindowID id, const wxString& caption, const wxPoint& pos, const wxSize& size, long style ) { m_Parent = parent; m_DC = DC; Loading Loading @@ -205,11 +216,17 @@ wxString timevalue; m_Track_DoubleSegm_Ctrl->SetValue( g_TwoSegmentTrackBuild ); } /*! * WinEDA_PcbGeneralOptionsFrame creator */ bool WinEDA_PcbGeneralOptionsFrame::Create( wxWindow* parent, wxWindowID id, const wxString& caption, const wxPoint& pos, const wxSize& size, long style ) bool WinEDA_PcbGeneralOptionsFrame::Create( wxWindow* parent, wxWindowID id, const wxString& caption, const wxPoint& pos, const wxSize& size, long style ) { ////@begin WinEDA_PcbGeneralOptionsFrame member initialisation m_PolarDisplay = NULL; Loading @@ -228,6 +245,7 @@ bool WinEDA_PcbGeneralOptionsFrame::Create( wxWindow* parent, wxWindowID id, con m_Track_DoubleSegm_Ctrl = NULL; m_MagneticPadOptCtrl = NULL; m_MagneticTrackOptCtrl = NULL; ////@end WinEDA_PcbGeneralOptionsFrame member initialisation ////@begin WinEDA_PcbGeneralOptionsFrame creation Loading @@ -240,11 +258,13 @@ bool WinEDA_PcbGeneralOptionsFrame::Create( wxWindow* parent, wxWindowID id, con GetSizer()->SetSizeHints( this ); } Centre(); ////@end WinEDA_PcbGeneralOptionsFrame creation SetFont( *g_DialogFont ); return true; } /*! * Control creation for WinEDA_PcbGeneralOptionsFrame */ Loading @@ -257,135 +277,224 @@ void WinEDA_PcbGeneralOptionsFrame::CreateControls() WinEDA_PcbGeneralOptionsFrame* itemDialog1 = this; wxBoxSizer* itemBoxSizer2 = new wxBoxSizer( wxHORIZONTAL ); itemDialog1->SetSizer( itemBoxSizer2 ); wxBoxSizer* itemBoxSizer3 = new wxBoxSizer( wxVERTICAL ); itemBoxSizer2->Add( itemBoxSizer3, 0, wxGROW | wxALL, 5 ); wxArrayString m_PolarDisplayStrings; m_PolarDisplayStrings.Add( _( "No Display" ) ); m_PolarDisplayStrings.Add( _( "Display" ) ); m_PolarDisplay = new wxRadioBox( itemDialog1, ID_RADIOBOX, _("Display Polar Coord"), wxDefaultPosition, wxDefaultSize, m_PolarDisplayStrings, 1, wxRA_SPECIFY_COLS ); m_PolarDisplay = new wxRadioBox( itemDialog1, ID_RADIOBOX, _( "Display Polar Coord" ), wxDefaultPosition, wxDefaultSize, m_PolarDisplayStrings, 1, wxRA_SPECIFY_COLS ); m_PolarDisplay->SetSelection( 0 ); itemBoxSizer3->Add( m_PolarDisplay, 0, wxALIGN_LEFT | wxALL, 5 ); wxArrayString m_BoxUnitsStrings; m_BoxUnitsStrings.Add( _( "Inches" ) ); m_BoxUnitsStrings.Add( _( "millimeters" ) ); m_BoxUnits = new wxRadioBox( itemDialog1, ID_RADIOBOX1, _("Units"), wxDefaultPosition, wxDefaultSize, m_BoxUnitsStrings, 1, wxRA_SPECIFY_COLS ); m_BoxUnits = new wxRadioBox( itemDialog1, ID_RADIOBOX1, _( "Units" ), wxDefaultPosition, wxDefaultSize, m_BoxUnitsStrings, 1, wxRA_SPECIFY_COLS ); m_BoxUnits->SetSelection( 0 ); itemBoxSizer3->Add( m_BoxUnits, 0, wxALIGN_LEFT | wxALL, 5 ); wxArrayString m_CursorShapeStrings; m_CursorShapeStrings.Add( _( "Small" ) ); m_CursorShapeStrings.Add( _( "Big" ) ); m_CursorShape = new wxRadioBox( itemDialog1, ID_RADIOBOX2, _("Cursor"), wxDefaultPosition, wxDefaultSize, m_CursorShapeStrings, 1, wxRA_SPECIFY_COLS ); m_CursorShape = new wxRadioBox( itemDialog1, ID_RADIOBOX2, _( "Cursor" ), wxDefaultPosition, wxDefaultSize, m_CursorShapeStrings, 1, wxRA_SPECIFY_COLS ); m_CursorShape->SetSelection( 0 ); itemBoxSizer3->Add( m_CursorShape, 0, wxALIGN_LEFT | wxALL, 5 ); wxBoxSizer* itemBoxSizer7 = new wxBoxSizer( wxVERTICAL ); itemBoxSizer2->Add( itemBoxSizer7, 0, wxGROW | wxALL, 5 ); wxStaticBox* itemStaticBoxSizer8Static = new wxStaticBox(itemDialog1, wxID_ANY, _("Number of Layers:")); wxStaticBoxSizer* itemStaticBoxSizer8 = new wxStaticBoxSizer(itemStaticBoxSizer8Static, wxVERTICAL); wxStaticBox* itemStaticBoxSizer8Static = new wxStaticBox( itemDialog1, wxID_ANY, _( "Number of Layers:" ) ); wxStaticBoxSizer* itemStaticBoxSizer8 = new wxStaticBoxSizer( itemStaticBoxSizer8Static, wxVERTICAL ); itemBoxSizer7->Add( itemStaticBoxSizer8, 0, wxALIGN_CENTER_HORIZONTAL | wxALL, 5 ); m_LayerNumber = new wxSpinCtrl( itemDialog1, ID_SPINCTRL1, _T("1"), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 1, 16, 1 ); m_LayerNumber = new wxSpinCtrl( itemDialog1, ID_SPINCTRL1, _T( "1" ), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 1, 16, 1 ); itemStaticBoxSizer8->Add( m_LayerNumber, 0, wxALIGN_CENTER_HORIZONTAL | wxALL, 5 ); wxStaticBox* itemStaticBoxSizer10Static = new wxStaticBox(itemDialog1, wxID_ANY, _("Max Links:")); wxStaticBoxSizer* itemStaticBoxSizer10 = new wxStaticBoxSizer(itemStaticBoxSizer10Static, wxVERTICAL); wxStaticBox* itemStaticBoxSizer10Static = new wxStaticBox( itemDialog1, wxID_ANY, _( "Max Links:" ) ); wxStaticBoxSizer* itemStaticBoxSizer10 = new wxStaticBoxSizer( itemStaticBoxSizer10Static, wxVERTICAL ); itemBoxSizer7->Add( itemStaticBoxSizer10, 0, wxALIGN_CENTER_HORIZONTAL | wxALL, 5 ); m_MaxShowLinks = new wxSpinCtrl( itemDialog1, ID_SPINCTRL2, _T("1"), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 1, 5, 1 ); m_MaxShowLinks = new wxSpinCtrl( itemDialog1, ID_SPINCTRL2, _T( "1" ), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 1, 5, 1 ); itemStaticBoxSizer10->Add( m_MaxShowLinks, 0, wxALIGN_CENTER_HORIZONTAL | wxALL, 5 ); wxStaticBox* itemStaticBoxSizer12Static = new wxStaticBox(itemDialog1, wxID_ANY, _("Auto Save (minuts):")); wxStaticBoxSizer* itemStaticBoxSizer12 = new wxStaticBoxSizer(itemStaticBoxSizer12Static, wxVERTICAL); wxStaticBox* itemStaticBoxSizer12Static = new wxStaticBox( itemDialog1, wxID_ANY, _( "Auto Save (minuts):" ) ); wxStaticBoxSizer* itemStaticBoxSizer12 = new wxStaticBoxSizer( itemStaticBoxSizer12Static, wxVERTICAL ); itemBoxSizer7->Add( itemStaticBoxSizer12, 0, wxALIGN_CENTER_HORIZONTAL | wxALL, 5 ); m_SaveTime = new wxSpinCtrl( itemDialog1, ID_SPINCTRL3, _T("0"), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 60, 0 ); m_SaveTime = new wxSpinCtrl( itemDialog1, ID_SPINCTRL3, _T( "0" ), wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 60, 0 ); itemStaticBoxSizer12->Add( m_SaveTime, 0, wxALIGN_CENTER_HORIZONTAL | wxALL, 5 ); wxBoxSizer* itemBoxSizer14 = new wxBoxSizer( wxVERTICAL ); itemBoxSizer2->Add( itemBoxSizer14, 0, wxGROW | wxALL, 5 ); wxStaticBox* itemStaticBoxSizer15Static = new wxStaticBox(itemDialog1, wxID_ANY, _("Options:")); wxStaticBoxSizer* itemStaticBoxSizer15 = new wxStaticBoxSizer(itemStaticBoxSizer15Static, wxVERTICAL); wxStaticBox* itemStaticBoxSizer15Static = new wxStaticBox( itemDialog1, wxID_ANY, _( "Options:" ) ); wxStaticBoxSizer* itemStaticBoxSizer15 = new wxStaticBoxSizer( itemStaticBoxSizer15Static, wxVERTICAL ); itemBoxSizer14->Add( itemStaticBoxSizer15, 0, wxALIGN_CENTER_HORIZONTAL | wxALL, 5 ); m_DrcOn = new wxCheckBox( itemDialog1, ID_CHECKBOX, _("Drc ON"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_DrcOn = new wxCheckBox( itemDialog1, ID_CHECKBOX, _( "Drc ON" ), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_DrcOn->SetValue( false ); m_DrcOn->SetForegroundColour( wxColour( 198, 0, 0 ) ); itemStaticBoxSizer15->Add( m_DrcOn, 0, wxALIGN_LEFT | wxALL, 5 ); m_ShowGlobalRatsnest = new wxCheckBox( itemDialog1, ID_CHECKBOX1, _("Show Ratsnest"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_ShowGlobalRatsnest = new wxCheckBox( itemDialog1, ID_CHECKBOX1, _( "Show Ratsnest" ), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_ShowGlobalRatsnest->SetValue( false ); itemStaticBoxSizer15->Add( m_ShowGlobalRatsnest, 0, wxALIGN_LEFT | wxALL, 5 ); m_ShowModuleRatsnest = new wxCheckBox( itemDialog1, ID_CHECKBOX2, _("Show Mod Ratsnest"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_ShowModuleRatsnest = new wxCheckBox( itemDialog1, ID_CHECKBOX2, _( "Show Mod Ratsnest" ), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_ShowModuleRatsnest->SetValue( false ); itemStaticBoxSizer15->Add( m_ShowModuleRatsnest, 0, wxALIGN_LEFT | wxALL, 5 ); m_TrackAutodel = new wxCheckBox( itemDialog1, ID_CHECKBOX3, _("Tracks Auto Del"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_TrackAutodel = new wxCheckBox( itemDialog1, ID_CHECKBOX3, _( "Tracks Auto Del" ), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_TrackAutodel->SetValue( false ); itemStaticBoxSizer15->Add( m_TrackAutodel, 0, wxALIGN_LEFT | wxALL, 5 ); m_Track_45_Only_Ctrl = new wxCheckBox( itemDialog1, ID_CHECKBOX4, _("Track 45 Only"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_Track_45_Only_Ctrl = new wxCheckBox( itemDialog1, ID_CHECKBOX4, _( "Track 45 Only" ), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_Track_45_Only_Ctrl->SetValue( false ); itemStaticBoxSizer15->Add( m_Track_45_Only_Ctrl, 0, wxALIGN_LEFT | wxALL, 5 ); m_Segments_45_Only_Ctrl = new wxCheckBox( itemDialog1, ID_CHECKBOX5, _("Segments 45 Only"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_Segments_45_Only_Ctrl = new wxCheckBox( itemDialog1, ID_CHECKBOX5, _( "Segments 45 Only" ), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_Segments_45_Only_Ctrl->SetValue( false ); itemStaticBoxSizer15->Add( m_Segments_45_Only_Ctrl, 0, wxALIGN_LEFT | wxALL, 5 ); m_AutoPANOpt = new wxCheckBox( itemDialog1, ID_CHECKBOX6, _("Auto PAN"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_AutoPANOpt = new wxCheckBox( itemDialog1, ID_CHECKBOX6, _( "Auto PAN" ), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_AutoPANOpt->SetValue( false ); m_AutoPANOpt->SetForegroundColour( wxColour( 0, 0, 255 ) ); itemStaticBoxSizer15->Add( m_AutoPANOpt, 0, wxALIGN_LEFT | wxALL, 5 ); m_Track_DoubleSegm_Ctrl = new wxCheckBox( itemDialog1, ID_CHECKBOX7, _("Double Segm Track"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_Track_DoubleSegm_Ctrl = new wxCheckBox( itemDialog1, ID_CHECKBOX7, _( "Double Segm Track" ), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); m_Track_DoubleSegm_Ctrl->SetValue( false ); m_Track_DoubleSegm_Ctrl->SetForegroundColour( wxColour( 0, 144, 0 ) ); itemStaticBoxSizer15->Add( m_Track_DoubleSegm_Ctrl, 0, wxALIGN_LEFT | wxALL, 5 ); wxBoxSizer* itemBoxSizer24 = new wxBoxSizer( wxVERTICAL ); itemBoxSizer2->Add( itemBoxSizer24, 0, wxALIGN_TOP | wxALL, 5 ); wxArrayString m_MagneticPadOptCtrlStrings; m_MagneticPadOptCtrlStrings.Add( _( "Never" ) ); m_MagneticPadOptCtrlStrings.Add( _( "When creating tracks" ) ); m_MagneticPadOptCtrlStrings.Add( _( "Always" ) ); m_MagneticPadOptCtrl = new wxRadioBox( itemDialog1, ID_RADIOBOX4, _("Magnetic Pads"), wxDefaultPosition, wxDefaultSize, m_MagneticPadOptCtrlStrings, 1, wxRA_SPECIFY_COLS ); m_MagneticPadOptCtrl = new wxRadioBox( itemDialog1, ID_RADIOBOX4, _( "Magnetic Pads" ), wxDefaultPosition, wxDefaultSize, m_MagneticPadOptCtrlStrings, 1, wxRA_SPECIFY_COLS ); m_MagneticPadOptCtrl->SetSelection( 0 ); if( WinEDA_PcbGeneralOptionsFrame::ShowToolTips() ) m_MagneticPadOptCtrl->SetToolTip(_("control the capture of the pcb cursor when the mouse cursor enters a pad area")); m_MagneticPadOptCtrl->SetToolTip( _( "control the capture of the pcb cursor when the mouse cursor enters a pad area" ) ); itemBoxSizer24->Add( m_MagneticPadOptCtrl, 0, wxGROW | wxALL, 5 ); wxArrayString m_MagneticTrackOptCtrlStrings; m_MagneticTrackOptCtrlStrings.Add( _( "Never" ) ); m_MagneticTrackOptCtrlStrings.Add( _( "When creating tracks" ) ); m_MagneticTrackOptCtrlStrings.Add( _( "Always" ) ); m_MagneticTrackOptCtrl = new wxRadioBox( itemDialog1, ID_RADIOBOX3, _("Magnetic Tracks"), wxDefaultPosition, wxDefaultSize, m_MagneticTrackOptCtrlStrings, 1, wxRA_SPECIFY_COLS ); m_MagneticTrackOptCtrl = new wxRadioBox( itemDialog1, ID_RADIOBOX3, _( "Magnetic Tracks" ), wxDefaultPosition, wxDefaultSize, m_MagneticTrackOptCtrlStrings, 1, wxRA_SPECIFY_COLS ); m_MagneticTrackOptCtrl->SetSelection( 0 ); if( WinEDA_PcbGeneralOptionsFrame::ShowToolTips() ) m_MagneticTrackOptCtrl->SetToolTip(_("control the capture of the pcb cursor when the mouse cursor enters a track")); m_MagneticTrackOptCtrl->SetToolTip( _( "control the capture of the pcb cursor when the mouse cursor enters a track" ) ); itemBoxSizer24->Add( m_MagneticTrackOptCtrl, 0, wxGROW | wxALL, 5 ); wxButton* itemButton27 = new wxButton( itemDialog1, wxID_OK, _("&OK"), wxDefaultPosition, wxDefaultSize, 0 ); wxButton* itemButton27 = new wxButton( itemDialog1, wxID_OK, _( "&OK" ), wxDefaultPosition, wxDefaultSize, 0 ); itemButton27->SetForegroundColour( wxColour( 221, 0, 0 ) ); itemBoxSizer24->Add( itemButton27, 0, wxGROW | wxALL, 5 ); wxButton* itemButton28 = new wxButton( itemDialog1, wxID_CANCEL, _("&Cancel"), wxDefaultPosition, wxDefaultSize, 0 ); wxButton* itemButton28 = new wxButton( itemDialog1, wxID_CANCEL, _( "&Cancel" ), wxDefaultPosition, wxDefaultSize, 0 ); itemButton28->SetForegroundColour( wxColour( 0, 0, 255 ) ); itemBoxSizer24->Add( itemButton28, 0, wxGROW | wxALL, 5 ); // Set validators m_MagneticPadOptCtrl->SetValidator( wxGenericValidator( &g_MagneticPadOption ) ); m_MagneticTrackOptCtrl->SetValidator( wxGenericValidator( &g_MagneticTrackOption ) ); ////@end WinEDA_PcbGeneralOptionsFrame content construction } /*! * Should we show tooltips? */ Loading @@ -395,6 +504,7 @@ bool WinEDA_PcbGeneralOptionsFrame::ShowToolTips() return true; } /*! * Get bitmap resources */ Loading @@ -405,9 +515,11 @@ wxBitmap WinEDA_PcbGeneralOptionsFrame::GetBitmapResource( const wxString& name ////@begin WinEDA_PcbGeneralOptionsFrame bitmap retrieval wxUnusedVar( name ); return wxNullBitmap; ////@end WinEDA_PcbGeneralOptionsFrame bitmap retrieval } /*! * Get icon resources */ Loading @@ -418,9 +530,11 @@ wxIcon WinEDA_PcbGeneralOptionsFrame::GetIconResource( const wxString& name ) ////@begin WinEDA_PcbGeneralOptionsFrame icon retrieval wxUnusedVar( name ); return wxNullIcon; ////@end WinEDA_PcbGeneralOptionsFrame icon retrieval } /*! * wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CANCEL */ Loading @@ -430,8 +544,11 @@ void WinEDA_PcbGeneralOptionsFrame::OnCancelClick( wxCommandEvent& event ) ////@begin wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_OK in WinEDA_PcbGeneralOptionsFrame. // Before editing this code, remove the block markers. event.Skip(); ////@end wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_OK in WinEDA_PcbGeneralOptionsFrame. } /*! * wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_OK */ Loading @@ -439,14 +556,15 @@ void WinEDA_PcbGeneralOptionsFrame::OnCancelClick( wxCommandEvent& event ) void WinEDA_PcbGeneralOptionsFrame::OnOkClick( wxCommandEvent& event ) { AcceptPcbOptions( event ); ////@begin wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_OK in WinEDA_PcbGeneralOptionsFrame. // Before editing this code, remove the block markers. event.Skip(); ////@end wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_OK in WinEDA_PcbGeneralOptionsFrame. } /**************************************************************************/ void WinEDA_PcbGeneralOptionsFrame::AcceptPcbOptions( wxCommandEvent& event ) /**************************************************************************/ Loading @@ -457,7 +575,8 @@ int ii; (m_PolarDisplay->GetSelection() == 0) ? FALSE : TRUE; ii = g_UnitMetric; g_UnitMetric = (m_BoxUnits->GetSelection() == 0) ? 0 : 1; if ( ii != g_UnitMetric ) m_Parent->ReCreateAuxiliaryToolbar(); if( ii != g_UnitMetric ) m_Parent->ReCreateAuxiliaryToolbar(); g_CursorShape = m_CursorShape->GetSelection(); g_TimeOut = 60 * m_SaveTime->GetValue(); Loading @@ -484,8 +603,7 @@ int ii; } enum id_optpcb { enum id_optpcb { ID_ACCEPT_OPT = 1000, ID_CANCEL_OPT }; Loading @@ -499,14 +617,15 @@ void WinEDA_PcbFrame::InstallPcbOptionsFrame(const wxPoint & pos, wxDC* DC, int id ) /*****************************************************************/ { switch( id ) { case ID_PCB_TRACK_SIZE_SETUP: { WinEDA_PcbTracksDialog* OptionsFrame = new WinEDA_PcbTracksDialog( this ); OptionsFrame->ShowModal(); OptionsFrame->Destroy(); OptionsFrame->ShowModal(); OptionsFrame->Destroy(); } break; Loading @@ -514,7 +633,9 @@ void WinEDA_PcbFrame::InstallPcbOptionsFrame(const wxPoint & pos, { WinEDA_GraphicItemsOptionsDialog* OptionsFrame = new WinEDA_GraphicItemsOptionsDialog( this ); OptionsFrame->ShowModal(); OptionsFrame->Destroy(); OptionsFrame->ShowModal(); OptionsFrame->Destroy(); } break; Loading @@ -522,7 +643,9 @@ void WinEDA_PcbFrame::InstallPcbOptionsFrame(const wxPoint & pos, { WinEDA_DisplayOptionsDialog* OptionsFrame = new WinEDA_DisplayOptionsDialog( this ); OptionsFrame->ShowModal(); OptionsFrame->Destroy(); OptionsFrame->ShowModal(); OptionsFrame->Destroy(); } break; Loading @@ -530,7 +653,9 @@ void WinEDA_PcbFrame::InstallPcbOptionsFrame(const wxPoint & pos, { WinEDA_PcbGeneralOptionsFrame* OptionsFrame = new WinEDA_PcbGeneralOptionsFrame( this, DC ); OptionsFrame->ShowModal(); OptionsFrame->Destroy(); OptionsFrame->ShowModal(); OptionsFrame->Destroy(); } break; } Loading @@ -542,6 +667,6 @@ void WinEDA_ModuleEditFrame::InstallOptionsFrame(const wxPoint & pos) /*******************************************************************/ { WinEDA_GraphicItemsOptionsDialog OptionsFrame( this ); OptionsFrame.ShowModal(); }