/************************************/ /* dialog_graphic_items_options.cpp */ /************************************/ #include "fctsys.h" #include "gr_basic.h" #include "common.h" #include "pcbnew.h" #include "pcbplot.h" #include "autorout.h" #include "pcbnew_id.h" #include "protos.h" #include "dialog_graphic_items_options.h" #include void WinEDA_GraphicItemsOptionsDialog::SetDisplayValue() { /* Drawings width */ AddUnitSymbol( *m_GraphicSegmWidthTitle ); PutValueInLocalUnits( *m_OptPcbSegmWidth, g_DesignSettings.m_DrawSegmentWidth, PCB_INTERNAL_UNIT ); /* Edges width */ AddUnitSymbol( *m_BoardEdgesWidthTitle ); PutValueInLocalUnits( *m_OptPcbEdgesWidth, g_DesignSettings.m_EdgeSegmentWidth, PCB_INTERNAL_UNIT ); /* Pcb Textes (Size & Width) */ AddUnitSymbol( *m_CopperTextWidthTitle ); PutValueInLocalUnits( *m_OptPcbTextWidth, g_DesignSettings.m_PcbTextWidth, PCB_INTERNAL_UNIT ); AddUnitSymbol( *m_TextSizeVTitle ); PutValueInLocalUnits( *m_OptPcbTextVSize, g_DesignSettings.m_PcbTextSize.y, PCB_INTERNAL_UNIT ); AddUnitSymbol( *m_TextSizeHTitle ); PutValueInLocalUnits( *m_OptPcbTextHSize, g_DesignSettings.m_PcbTextSize.x, PCB_INTERNAL_UNIT ); /* Modules: Edges width */ AddUnitSymbol( *m_EdgeModWidthTitle ); PutValueInLocalUnits( *m_OptModuleEdgesWidth, ModuleSegmentWidth, PCB_INTERNAL_UNIT ); /* Modules: Texts: Size & width */ AddUnitSymbol( *m_TextModWidthTitle ); PutValueInLocalUnits( *m_OptModuleTextWidth, ModuleTextWidth, PCB_INTERNAL_UNIT ); AddUnitSymbol( *m_TextModSizeVTitle ); PutValueInLocalUnits( *m_OptModuleTextVSize, ModuleTextSize.y, PCB_INTERNAL_UNIT ); AddUnitSymbol( *m_TextModSizeHTitle ); PutValueInLocalUnits( *m_OptModuleTextHSize, ModuleTextSize.x, PCB_INTERNAL_UNIT ); } void WinEDA_GraphicItemsOptionsDialog::AcceptOptions( wxCommandEvent& event ) { g_DesignSettings.m_DrawSegmentWidth = ReturnValueFromTextCtrl( *m_OptPcbSegmWidth, PCB_INTERNAL_UNIT ); g_DesignSettings.m_EdgeSegmentWidth = ReturnValueFromTextCtrl( *m_OptPcbEdgesWidth, PCB_INTERNAL_UNIT ); g_DesignSettings.m_PcbTextWidth = ReturnValueFromTextCtrl( *m_OptPcbTextWidth, PCB_INTERNAL_UNIT ); g_DesignSettings.m_PcbTextSize.y = ReturnValueFromTextCtrl( *m_OptPcbTextVSize, PCB_INTERNAL_UNIT ); g_DesignSettings.m_PcbTextSize.x = ReturnValueFromTextCtrl( *m_OptPcbTextHSize, PCB_INTERNAL_UNIT ); ModuleSegmentWidth = ReturnValueFromTextCtrl( *m_OptModuleEdgesWidth, PCB_INTERNAL_UNIT ); ModuleTextWidth = ReturnValueFromTextCtrl( *m_OptModuleTextWidth, PCB_INTERNAL_UNIT ); ModuleTextSize.y = ReturnValueFromTextCtrl( *m_OptModuleTextVSize, PCB_INTERNAL_UNIT ); ModuleTextSize.x = ReturnValueFromTextCtrl( *m_OptModuleTextHSize, PCB_INTERNAL_UNIT ); EndModal( 1 ); } /*! * WinEDA_GraphicItemsOptionsDialog type definition */ IMPLEMENT_DYNAMIC_CLASS( WinEDA_GraphicItemsOptionsDialog, wxDialog ) /*! * WinEDA_GraphicItemsOptionsDialog event table definition */ BEGIN_EVENT_TABLE( WinEDA_GraphicItemsOptionsDialog, wxDialog ) ////@begin WinEDA_GraphicItemsOptionsDialog event table entries EVT_BUTTON( wxID_OK, WinEDA_GraphicItemsOptionsDialog::OnOkClick ) EVT_BUTTON( wxID_CANCEL, WinEDA_GraphicItemsOptionsDialog::OnCancelClick ) ////@end WinEDA_GraphicItemsOptionsDialog event table entries END_EVENT_TABLE() /*! * WinEDA_GraphicItemsOptionsDialog constructors */ WinEDA_GraphicItemsOptionsDialog::WinEDA_GraphicItemsOptionsDialog() { } WinEDA_GraphicItemsOptionsDialog::WinEDA_GraphicItemsOptionsDialog( WinEDA_BasePcbFrame* parent, wxWindowID id, const wxString& caption, const wxPoint& pos, const wxSize& size, long style ) { Create( parent, id, caption, pos, size, style ); } /*! * WinEDA_GraphicItemsOptionsDialog creator */ bool WinEDA_GraphicItemsOptionsDialog::Create( wxWindow* parent, wxWindowID id, const wxString& caption, const wxPoint& pos, const wxSize& size, long style ) { ////@begin WinEDA_GraphicItemsOptionsDialog member initialisation m_GraphicSegmWidthTitle = NULL; m_OptPcbSegmWidth = NULL; m_BoardEdgesWidthTitle = NULL; m_OptPcbEdgesWidth = NULL; m_CopperTextWidthTitle = NULL; m_OptPcbTextWidth = NULL; m_TextSizeVTitle = NULL; m_OptPcbTextVSize = NULL; m_TextSizeHTitle = NULL; m_OptPcbTextHSize = NULL; m_EdgeModWidthTitle = NULL; m_OptModuleEdgesWidth = NULL; m_TextModWidthTitle = NULL; m_OptModuleTextWidth = NULL; m_TextModSizeVTitle = NULL; m_OptModuleTextVSize = NULL; m_TextModSizeHTitle = NULL; m_OptModuleTextHSize = NULL; ////@end WinEDA_GraphicItemsOptionsDialog member initialisation ////@begin WinEDA_GraphicItemsOptionsDialog creation SetExtraStyle( wxWS_EX_BLOCK_EVENTS ); wxDialog::Create( parent, id, caption, pos, size, style ); CreateControls(); if( GetSizer() ) { GetSizer()->SetSizeHints( this ); } Centre(); ////@end WinEDA_GraphicItemsOptionsDialog creation return true; } /*! * Control creation for WinEDA_GraphicItemsOptionsDialog */ void WinEDA_GraphicItemsOptionsDialog::CreateControls() { ////@begin WinEDA_GraphicItemsOptionsDialog content construction // Generated by DialogBlocks, 29/04/2009 15:15:02 (unregistered) WinEDA_GraphicItemsOptionsDialog* itemDialog1 = this; wxBoxSizer* itemBoxSizer2 = new wxBoxSizer( wxHORIZONTAL ); itemDialog1->SetSizer( itemBoxSizer2 ); wxStaticBox* itemStaticBoxSizer3Static = new wxStaticBox(itemDialog1, wxID_ANY, _( "Graphics:" ) ); wxStaticBoxSizer* itemStaticBoxSizer3 = new wxStaticBoxSizer( itemStaticBoxSizer3Static, wxVERTICAL ); itemBoxSizer2->Add( itemStaticBoxSizer3, 0, wxGROW | wxALL, 5 ); m_GraphicSegmWidthTitle = new wxStaticText( itemDialog1, wxID_STATIC, _( "Graphic segm Width" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer3->Add( m_GraphicSegmWidthTitle, 0, wxALIGN_LEFT | wxLEFT | wxRIGHT | wxTOP | wxADJUST_MINSIZE, 5 ); m_OptPcbSegmWidth = new wxTextCtrl( itemDialog1, ID_TEXTCTRL_SEGW, _T( "" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer3->Add( m_OptPcbSegmWidth, 0, wxGROW | wxLEFT | wxRIGHT | wxBOTTOM, 5 ); m_BoardEdgesWidthTitle = new wxStaticText( itemDialog1, wxID_STATIC, _( "Board Edges Width" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer3->Add( m_BoardEdgesWidthTitle, 0, wxALIGN_LEFT | wxLEFT | wxRIGHT | wxTOP | wxADJUST_MINSIZE, 5 ); m_OptPcbEdgesWidth = new wxTextCtrl( itemDialog1, ID_TEXTCTRL_EDGES, _T( "" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer3->Add( m_OptPcbEdgesWidth, 0, wxGROW | wxLEFT | wxRIGHT | wxBOTTOM, 5 ); m_CopperTextWidthTitle = new wxStaticText( itemDialog1, wxID_STATIC, _( "Copper Text Width" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer3->Add( m_CopperTextWidthTitle, 0, wxALIGN_LEFT | wxLEFT | wxRIGHT | wxTOP | wxADJUST_MINSIZE, 5 ); m_OptPcbTextWidth = new wxTextCtrl( itemDialog1, ID_TEXTCTRL_TEXTW, _T( "" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer3->Add( m_OptPcbTextWidth, 0, wxALIGN_LEFT | wxLEFT | wxRIGHT | wxBOTTOM, 5 ); m_TextSizeVTitle = new wxStaticText( itemDialog1, wxID_STATIC, _( "Text Size V" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer3->Add( m_TextSizeVTitle, 0, wxALIGN_LEFT | wxLEFT | wxRIGHT | wxTOP | wxADJUST_MINSIZE, 5 ); m_OptPcbTextVSize = new wxTextCtrl( itemDialog1, ID_TEXTCTRL_TEXTV, _T( "" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer3->Add( m_OptPcbTextVSize, 0, wxGROW | wxLEFT | wxRIGHT | wxBOTTOM, 5 ); m_TextSizeHTitle = new wxStaticText( itemDialog1, wxID_STATIC, _( "Text Size H" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer3->Add( m_TextSizeHTitle, 0, wxALIGN_LEFT | wxLEFT | wxRIGHT | wxTOP | wxADJUST_MINSIZE, 5 ); m_OptPcbTextHSize = new wxTextCtrl( itemDialog1, ID_TEXTCTRL_TEXTH, _T( "" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer3->Add( m_OptPcbTextHSize, 0, wxGROW | wxLEFT | wxRIGHT | wxBOTTOM, 5 ); itemBoxSizer2->Add( 5, 5, 0, wxALIGN_CENTER_VERTICAL | wxALL, 5 ); wxStaticBox* itemStaticBoxSizer15Static = new wxStaticBox( itemDialog1, wxID_ANY, _( "Modules:" ) ); wxStaticBoxSizer* itemStaticBoxSizer15 = new wxStaticBoxSizer( itemStaticBoxSizer15Static, wxVERTICAL ); itemBoxSizer2->Add( itemStaticBoxSizer15, 0, wxGROW | wxALL, 5 ); m_EdgeModWidthTitle = new wxStaticText( itemDialog1, wxID_STATIC, _( "Edges Module Width" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer15->Add( m_EdgeModWidthTitle, 0, wxALIGN_LEFT | wxLEFT | wxRIGHT | wxTOP | wxADJUST_MINSIZE, 5 ); m_OptModuleEdgesWidth = new wxTextCtrl( itemDialog1, ID_TEXTCTRL_EDGEMOD_W, _T( "" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer15->Add( m_OptModuleEdgesWidth, 0, wxGROW | wxLEFT | wxRIGHT | wxBOTTOM, 5 ); m_TextModWidthTitle = new wxStaticText( itemDialog1, wxID_STATIC, _( "Text Module Width" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer15->Add( m_TextModWidthTitle, 0, wxALIGN_LEFT | wxLEFT | wxRIGHT | wxTOP | wxADJUST_MINSIZE, 5 ); m_OptModuleTextWidth = new wxTextCtrl( itemDialog1, ID_TEXTCTRL_TXTMOD_W, _T( "" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer15->Add( m_OptModuleTextWidth, 0, wxGROW | wxLEFT | wxRIGHT | wxBOTTOM, 5 ); m_TextModSizeVTitle = new wxStaticText( itemDialog1, wxID_STATIC, _( "Text Module Size V" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer15->Add( m_TextModSizeVTitle, 0, wxALIGN_LEFT | wxLEFT | wxRIGHT | wxTOP | wxADJUST_MINSIZE, 5 ); m_OptModuleTextVSize = new wxTextCtrl( itemDialog1, ID_TEXTCTRL_TXTMOD_V, _T( "" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer15->Add( m_OptModuleTextVSize, 0, wxGROW | wxLEFT | wxRIGHT | wxBOTTOM, 5 ); m_TextModSizeHTitle = new wxStaticText( itemDialog1, wxID_STATIC, _( "Text Module Size H" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer15->Add( m_TextModSizeHTitle, 0, wxALIGN_LEFT | wxLEFT | wxRIGHT | wxTOP | wxADJUST_MINSIZE, 5 ); m_OptModuleTextHSize = new wxTextCtrl( itemDialog1, ID_TEXTCTRL_TXTMOD_H, _T( "" ), wxDefaultPosition, wxDefaultSize, 0 ); itemStaticBoxSizer15->Add( m_OptModuleTextHSize, 0, wxGROW | wxLEFT | wxRIGHT | wxBOTTOM, 5 ); itemBoxSizer2->Add( 5, 5, 0, wxALIGN_CENTER_VERTICAL | wxALL, 5 ); wxBoxSizer* itemBoxSizer25 = new wxBoxSizer( wxVERTICAL ); itemBoxSizer2->Add( itemBoxSizer25, 0, wxALIGN_CENTER_VERTICAL | wxALL, 5 ); wxButton* itemButton26 = new wxButton( itemDialog1, wxID_OK, _( "&OK" ), wxDefaultPosition, wxDefaultSize, 0 ); itemBoxSizer25->Add( itemButton26, 0, wxGROW | wxALL, 5 ); wxButton* itemButton27 = new wxButton( itemDialog1, wxID_CANCEL, _( "&Cancel" ), wxDefaultPosition, wxDefaultSize, 0 ); itemBoxSizer25->Add( itemButton27, 0, wxGROW | wxALL, 5 ); ////@end WinEDA_GraphicItemsOptionsDialog content construction SetDisplayValue(); } /*! * Should we show tooltips? */ bool WinEDA_GraphicItemsOptionsDialog::ShowToolTips() { return true; } /*! * Get bitmap resources */ wxBitmap WinEDA_GraphicItemsOptionsDialog::GetBitmapResource( const wxString& name ) { // Bitmap retrieval ////@begin WinEDA_GraphicItemsOptionsDialog bitmap retrieval wxUnusedVar( name ); return wxNullBitmap; ////@end WinEDA_GraphicItemsOptionsDialog bitmap retrieval } /*! * Get icon resources */ wxIcon WinEDA_GraphicItemsOptionsDialog::GetIconResource( const wxString& name ) { // Icon retrieval ////@begin WinEDA_GraphicItemsOptionsDialog icon retrieval wxUnusedVar( name ); return wxNullIcon; ////@end WinEDA_GraphicItemsOptionsDialog icon retrieval } /*! * wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_OK */ void WinEDA_GraphicItemsOptionsDialog::OnOkClick( wxCommandEvent& event ) { AcceptOptions( event ); } /*! * wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CANCEL */ void WinEDA_GraphicItemsOptionsDialog::OnCancelClick( wxCommandEvent& event ) { ////@begin wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CANCEL in // WinEDA_GraphicItemsOptionsDialog. // Before editing this code, remove the block markers. event.Skip(); ////@end wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CANCEL in // WinEDA_GraphicItemsOptionsDialog. }