diff --git a/eeschema/libedit/lib_export.cpp b/eeschema/libedit/lib_export.cpp index 9a03aff6fd..f415cb1afa 100644 --- a/eeschema/libedit/lib_export.cpp +++ b/eeschema/libedit/lib_export.cpp @@ -46,7 +46,7 @@ void LIB_EDIT_FRAME::ImportPart() return; } - wxFileDialog dlg( this, _( "Import Symbol" ), m_mruPath, wxEmptyString, + wxFileDialog dlg( this, _( "Import Symbol" ), m_mruPath, wxEmptyString, SchematicLibraryFileWildcard(), wxFD_OPEN | wxFD_FILE_MUST_EXIST ); if( dlg.ShowModal() == wxID_CANCEL ) @@ -156,7 +156,7 @@ void LIB_EDIT_FRAME::ExportPart() if( fn.Exists() && !fn.IsDirWritable() ) { - msg.Printf( _( "Write permissions are required to save library \"%s\"." ), + msg.Printf( _( "Write permissions are required to save library \"%s\"." ), fn.GetFullPath() ); DisplayError( this, msg ); return; @@ -171,7 +171,7 @@ void LIB_EDIT_FRAME::ExportPart() } catch( const IO_ERROR& ioe ) { - msg = _( "Failed to create symbol library file " ) + fn.GetFullPath(); + msg.Printf( _( "Failed to create symbol library file \"%s\"" ), fn.GetFullPath() ); DisplayErrorMessage( this, msg, ioe.What() ); msg.Printf( _( "Error creating symbol library \"%s\"" ), fn.GetFullName() ); SetStatusText( msg ); diff --git a/pcbnew/dialogs/dialog_board_statistics.cpp b/pcbnew/dialogs/dialog_board_statistics.cpp index 95c4fad8ab..0dd1e8b9ba 100644 --- a/pcbnew/dialogs/dialog_board_statistics.cpp +++ b/pcbnew/dialogs/dialog_board_statistics.cpp @@ -24,6 +24,7 @@ #include "dialog_board_statistics.h" +#include #define COL_LABEL 0 #define COL_AMOUNT 1 @@ -56,9 +57,11 @@ struct DIALOG_BOARD_STATISTICS_SAVED_STATE bool subtractHoles; // Variables to save last report file name and folder - bool saveReportInitialized; - wxString saveReportFolder; - wxString saveReportName; + bool saveReportInitialized; // true after the 3 next string are initialized + wxString saveReportFolder; // last report folder + wxString saveReportName; // last report filename + wxString m_project; // name of the project used to create the last report + // used to reinit last state after a project change }; static DIALOG_BOARD_STATISTICS_SAVED_STATE s_savedDialogState; @@ -76,7 +79,7 @@ DIALOG_BOARD_STATISTICS::DIALOG_BOARD_STATISTICS( PCB_EDIT_FRAME* aParentFrame ) headingFont.SetSymbolicSize( wxFONTSIZE_SMALL ); m_gridComponents->SetCellValue( ROW_LABEL, COL_FRONT_SIDE, _( "Front Side" ) ); m_gridComponents->SetCellFont( ROW_LABEL, COL_FRONT_SIDE, headingFont ); - m_gridComponents->SetCellValue( ROW_LABEL, COL_BOTTOM_SIDE, _( "Bottom Side" ) ); + m_gridComponents->SetCellValue( ROW_LABEL, COL_BOTTOM_SIDE, _( "Back Side" ) ); m_gridComponents->SetCellFont( ROW_LABEL, COL_BOTTOM_SIDE, headingFont ); m_gridComponents->SetCellValue( ROW_LABEL, COL_TOTAL, _( "Total" ) ); m_gridComponents->SetCellFont( ROW_LABEL, COL_TOTAL, headingFont ); @@ -100,14 +103,22 @@ DIALOG_BOARD_STATISTICS::DIALOG_BOARD_STATISTICS( PCB_EDIT_FRAME* aParentFrame ) } wxFileName fn = m_parentFrame->GetBoard()->GetFileName(); - if( !s_savedDialogState.saveReportInitialized ) + + if( !s_savedDialogState.saveReportInitialized || + s_savedDialogState.m_project != Prj().GetProjectFullName() + ) { fn.SetName( fn.GetName() + "_report" ); fn.SetExt( "txt" ); s_savedDialogState.saveReportName = fn.GetFullName(); s_savedDialogState.saveReportFolder = wxPathOnly( Prj().GetProjectFullName() ); + s_savedDialogState.m_project = Prj().GetProjectFullName(); s_savedDialogState.saveReportInitialized = true; } + + // The wxStdDialogButtonSizer wxID_CANCLE button is in fact a close button + // Nothing to cancel: + m_sdbControlSizerCancel->SetLabel( _( "Close" ) ); } void DIALOG_BOARD_STATISTICS::refreshItemsTypes() @@ -129,7 +140,7 @@ void DIALOG_BOARD_STATISTICS::refreshItemsTypes() m_viasTypes.clear(); m_viasTypes.push_back( viasType_t( VIA_THROUGH, _( "Through vias:" ) ) ); m_viasTypes.push_back( viasType_t( VIA_BLIND_BURIED, _( "Blind/buried:" ) ) ); - m_viasTypes.push_back( viasType_t( VIA_MICROVIA, _( "Micro via:" ) ) ); + m_viasTypes.push_back( viasType_t( VIA_MICROVIA, _( "Micro vias:" ) ) ); // If there not enough rows in grids, append some int appendRows = m_componentsTypes.size() + 2 - m_gridComponents->GetNumberRows(); @@ -292,7 +303,7 @@ void DIALOG_BOARD_STATISTICS::updateWidets() currentRow++; } m_gridPads->SetCellValue( currentRow, COL_LABEL, _( "Total:" ) ); - m_gridPads->SetCellValue( currentRow, COL_AMOUNT, wxString::Format( wxT( "%i " ), totalPads ) ); + m_gridPads->SetCellValue( currentRow, COL_AMOUNT, wxString::Format( "%i ", totalPads ) ); int totalVias = 0; currentRow = 0; @@ -300,12 +311,12 @@ void DIALOG_BOARD_STATISTICS::updateWidets() { m_gridVias->SetCellValue( currentRow, COL_LABEL, type.title ); m_gridVias->SetCellValue( - currentRow, COL_AMOUNT, wxString::Format( wxT( "%i " ), type.qty ) ); + currentRow, COL_AMOUNT, wxString::Format( "%i ", type.qty ) ); totalVias += type.qty; currentRow++; } m_gridVias->SetCellValue( currentRow, COL_LABEL, _( "Total:" ) ); - m_gridVias->SetCellValue( currentRow, COL_AMOUNT, wxString::Format( wxT( "%i " ), totalVias ) ); + m_gridVias->SetCellValue( currentRow, COL_AMOUNT, wxString::Format( "%i ", totalVias ) ); int totalFront = 0; @@ -317,9 +328,9 @@ void DIALOG_BOARD_STATISTICS::updateWidets() { m_gridComponents->SetCellValue( currentRow, COL_LABEL, type.title ); m_gridComponents->SetCellValue( - currentRow, COL_FRONT_SIDE, wxString::Format( wxT( "%i " ), type.frontSideQty ) ); + currentRow, COL_FRONT_SIDE, wxString::Format( "%i ", type.frontSideQty ) ); m_gridComponents->SetCellValue( - currentRow, COL_BOTTOM_SIDE, wxString::Format( wxT( "%i " ), type.backSideQty ) ); + currentRow, COL_BOTTOM_SIDE, wxString::Format( "%i ", type.backSideQty ) ); m_gridComponents->SetCellValue( currentRow, 3, wxString::Format( wxT( "%i " ), type.frontSideQty + type.backSideQty ) ); totalFront += type.frontSideQty; @@ -328,10 +339,11 @@ void DIALOG_BOARD_STATISTICS::updateWidets() } m_gridComponents->SetCellValue( currentRow, COL_LABEL, _( "Total:" ) ); m_gridComponents->SetCellValue( currentRow, COL_FRONT_SIDE, - wxString::Format( wxT( "%i " ), totalFront ) ); - m_gridComponents->SetCellValue( currentRow, COL_BOTTOM_SIDE, wxString::Format( wxT( "%i " ), totalBack ) ); + wxString::Format( "%i ", totalFront ) ); + m_gridComponents->SetCellValue( currentRow, COL_BOTTOM_SIDE, + wxString::Format( "%i ", totalBack ) ); m_gridComponents->SetCellValue( - currentRow, COL_TOTAL, wxString::Format( wxT( "%i " ), totalFront + totalBack ) ); + currentRow, COL_TOTAL, wxString::Format( "%i ", totalFront + totalBack ) ); if( m_hasOutline ) { @@ -377,7 +389,7 @@ void DIALOG_BOARD_STATISTICS::saveReportClicked( wxCommandEvent& event ) wxFileName fn = m_parentFrame->GetBoard()->GetFileName(); boardName = fn.GetName(); wxFileDialog saveFileDialog( this, _( "Save Report File" ), s_savedDialogState.saveReportFolder, - s_savedDialogState.saveReportName, _( "text files (*.txt)|*.txt" ), + s_savedDialogState.saveReportName, TextFileWildcard(), wxFD_SAVE | wxFD_OVERWRITE_PROMPT ); if( saveFileDialog.ShowModal() == wxID_CANCEL ) @@ -386,15 +398,15 @@ void DIALOG_BOARD_STATISTICS::saveReportClicked( wxCommandEvent& event ) s_savedDialogState.saveReportFolder = wxPathOnly( saveFileDialog.GetPath() ); s_savedDialogState.saveReportName = saveFileDialog.GetFilename(); - outFile = wxFopen( saveFileDialog.GetPath(), wxT( "wt" ) ); + outFile = wxFopen( saveFileDialog.GetPath(), "wt" ); if( outFile == NULL ) { - msg.Printf( _( "Unable to create file \"%s\"" ), GetChars( saveFileDialog.GetPath() ) ); + msg.Printf( _( "Unable to create file \"%s\"" ), saveFileDialog.GetPath() ); DisplayErrorMessage( this, msg ); return; } - msg << _( "PCB statistics report\n" ); + msg << _( "PCB statistics report" ) << "\n"; msg << _( "Date: " ) << wxDateTime::Now().Format() << "\n"; msg << _( "Project: " ) << Prj().GetProjectName() << "\n"; msg << _( "Board name: " ) << boardName << "\n"; @@ -459,15 +471,16 @@ void DIALOG_BOARD_STATISTICS::saveReportClicked( wxCommandEvent& event ) //Write components amount to file msg << "\n"; - msg << _( "Components\n" ); - tmp.Printf( "%-*s | %*s | %*s | %*s |\n", colsWidth[0], columns[0], colsWidth[1], columns[1], - colsWidth[2], columns[2], colsWidth[3], columns[3] ); + msg << _( "Components" ) << "\n"; + tmp.Printf( "%-*s | %*s | %*s | %*s |\n", + colsWidth[0], columns[0], colsWidth[1], columns[1], + colsWidth[2], columns[2], colsWidth[3], columns[3] ); msg += tmp; for( auto& type : m_componentsTypes ) { tmp.Printf( "%-*s | %*d | %*d | %*d |\n", colsWidth[0], type.title, colsWidth[1], - type.frontSideQty, colsWidth[2], type.backSideQty, colsWidth[3], - type.backSideQty + type.frontSideQty ); + type.frontSideQty, colsWidth[2], type.backSideQty, colsWidth[3], + type.backSideQty + type.frontSideQty ); msg += tmp; } tmp.Printf( "%-*s | %*d | %*d | %*d |\n", colsWidth[0], _( "Total:" ), colsWidth[1], frontTotal, @@ -477,7 +490,7 @@ void DIALOG_BOARD_STATISTICS::saveReportClicked( wxCommandEvent& event ) int success = fprintf( outFile, "%s", TO_UTF8( msg ) ); if( success < 0 ) { - msg.Printf( _( "Error writing to file \"%s\"" ), GetChars( saveFileDialog.GetPath() ) ); + msg.Printf( _( "Error writing to file \"%s\"" ), saveFileDialog.GetPath() ); DisplayErrorMessage( this, msg ); } fclose( outFile ); diff --git a/pcbnew/dialogs/dialog_board_statistics_base.cpp b/pcbnew/dialogs/dialog_board_statistics_base.cpp index 078aa33138..229573b212 100644 --- a/pcbnew/dialogs/dialog_board_statistics_base.cpp +++ b/pcbnew/dialogs/dialog_board_statistics_base.cpp @@ -211,12 +211,12 @@ DIALOG_BOARD_STATISTICS_BASE::DIALOG_BOARD_STATISTICS_BASE( wxWindow* parent, wx bSizerBottom->Add( 0, 0, 1, wxEXPAND, 5 ); - m_buttonSaveReport = new wxButton( this, wxID_ANY, _("Save report"), wxDefaultPosition, wxDefaultSize, 0 ); + m_buttonSaveReport = new wxButton( this, wxID_ANY, _("Generate Report File"), wxDefaultPosition, wxDefaultSize, 0 ); bSizerBottom->Add( m_buttonSaveReport, 0, wxALL, 5 ); m_sdbControlSizer = new wxStdDialogButtonSizer(); - m_sdbControlSizerOK = new wxButton( this, wxID_OK ); - m_sdbControlSizer->AddButton( m_sdbControlSizerOK ); + m_sdbControlSizerCancel = new wxButton( this, wxID_CANCEL ); + m_sdbControlSizer->AddButton( m_sdbControlSizerCancel ); m_sdbControlSizer->Realize(); bSizerBottom->Add( m_sdbControlSizer, 0, wxBOTTOM|wxLEFT|wxRIGHT|wxTOP, 5 ); diff --git a/pcbnew/dialogs/dialog_board_statistics_base.fbp b/pcbnew/dialogs/dialog_board_statistics_base.fbp index 9e74c35ef3..b8c02acd4e 100644 --- a/pcbnew/dialogs/dialog_board_statistics_base.fbp +++ b/pcbnew/dialogs/dialog_board_statistics_base.fbp @@ -48,7 +48,7 @@ DIALOG_BOARD_STATISTICS_BASE - wxDEFAULT_DIALOG_STYLE + wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER DIALOG_SHIM; dialog_shim.h; forward_declare Board Statistics @@ -1034,7 +1034,7 @@ 0 0 wxID_ANY - Save report + Generate Report File 0 @@ -1076,11 +1076,11 @@ 0 0 - 0 + 1 0 0 0 - 1 + 0 0 0 diff --git a/pcbnew/dialogs/dialog_board_statistics_base.h b/pcbnew/dialogs/dialog_board_statistics_base.h index c24879c9fe..3c5d133fe1 100644 --- a/pcbnew/dialogs/dialog_board_statistics_base.h +++ b/pcbnew/dialogs/dialog_board_statistics_base.h @@ -49,7 +49,7 @@ class DIALOG_BOARD_STATISTICS_BASE : public DIALOG_SHIM wxStaticLine* m_staticline2; wxButton* m_buttonSaveReport; wxStdDialogButtonSizer* m_sdbControlSizer; - wxButton* m_sdbControlSizerOK; + wxButton* m_sdbControlSizerCancel; // Virtual event handlers, overide them in your derived class virtual void checkboxClicked( wxCommandEvent& event ) { event.Skip(); } @@ -58,7 +58,7 @@ class DIALOG_BOARD_STATISTICS_BASE : public DIALOG_SHIM public: - DIALOG_BOARD_STATISTICS_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Board Statistics"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE ); + DIALOG_BOARD_STATISTICS_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Board Statistics"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER ); ~DIALOG_BOARD_STATISTICS_BASE(); }; diff --git a/pcbnew/dialogs/dialog_copper_zones_base.cpp b/pcbnew/dialogs/dialog_copper_zones_base.cpp index 937756e48a..e4abf07a40 100644 --- a/pcbnew/dialogs/dialog_copper_zones_base.cpp +++ b/pcbnew/dialogs/dialog_copper_zones_base.cpp @@ -1,5 +1,5 @@ /////////////////////////////////////////////////////////////////////////// -// C++ code generated with wxFormBuilder (version Dec 30 2017) +// C++ code generated with wxFormBuilder (version Jul 10 2019) // http://www.wxformbuilder.org/ // // PLEASE DO *NOT* EDIT THIS FILE! @@ -12,343 +12,344 @@ DIALOG_COPPER_ZONE_BASE::DIALOG_COPPER_ZONE_BASE( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : DIALOG_SHIM( parent, id, title, pos, size, style ) { this->SetSizeHints( wxDefaultSize, wxDefaultSize ); - + m_MainBoxSizer = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* m_OptionsBoxSizer; m_OptionsBoxSizer = new wxBoxSizer( wxHORIZONTAL ); - + wxStaticBoxSizer* sbSizer2; sbSizer2 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Layer") ), wxVERTICAL ); - + m_layers = new wxDataViewListCtrl( sbSizer2->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, wxDV_NO_HEADER|wxBORDER_SIMPLE ); m_layers->SetMinSize( wxSize( 120,-1 ) ); - + sbSizer2->Add( m_layers, 1, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 ); - - + + m_OptionsBoxSizer->Add( sbSizer2, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 ); - + wxStaticBoxSizer* sbSizer3; sbSizer3 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Net") ), wxHORIZONTAL ); - - m_ListNetNameSelection = new wxListBox( sbSizer3->GetStaticBox(), ID_NETNAME_SELECTION, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 ); + + m_ListNetNameSelection = new wxListBox( sbSizer3->GetStaticBox(), ID_NETNAME_SELECTION, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 ); sbSizer3->Add( m_ListNetNameSelection, 1, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 ); - + wxBoxSizer* bFilteringSizer; bFilteringSizer = new wxBoxSizer( wxVERTICAL ); - + m_staticTextDisplay = new wxStaticText( sbSizer3->GetStaticBox(), wxID_ANY, _("Hide nets matching:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextDisplay->Wrap( -1 ); bFilteringSizer->Add( m_staticTextDisplay, 0, wxRIGHT|wxLEFT, 5 ); - + m_DoNotShowNetNameFilter = new wxTextCtrl( sbSizer3->GetStaticBox(), ID_TEXTCTRL_NETNAMES_FILTER, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PROCESS_ENTER ); m_DoNotShowNetNameFilter->SetToolTip( _("Pattern to filter net names in filtered list.\nNet names matching this pattern are not displayed.") ); m_DoNotShowNetNameFilter->SetMinSize( wxSize( 180,-1 ) ); - + bFilteringSizer->Add( m_DoNotShowNetNameFilter, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 ); - + m_staticTextVFilter = new wxStaticText( sbSizer3->GetStaticBox(), wxID_ANY, _("Show nets matching:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextVFilter->Wrap( -1 ); bFilteringSizer->Add( m_staticTextVFilter, 0, wxRIGHT|wxLEFT, 5 ); - + m_ShowNetNameFilter = new wxTextCtrl( sbSizer3->GetStaticBox(), ID_TEXTCTRL_NETNAMES_FILTER, _("*"), wxDefaultPosition, wxDefaultSize, wxTE_PROCESS_ENTER ); m_ShowNetNameFilter->SetToolTip( _("Pattern to filter net names in filtered list.\nOnly net names matching this pattern are displayed.") ); - + bFilteringSizer->Add( m_ShowNetNameFilter, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 ); - + m_buttonRunFilter = new wxButton( sbSizer3->GetStaticBox(), wxID_APPLY_FILTERS, _("Apply Filters"), wxDefaultPosition, wxDefaultSize, 0 ); bFilteringSizer->Add( m_buttonRunFilter, 0, wxALL|wxEXPAND, 5 ); - - + + bFilteringSizer->Add( 0, 0, 0, wxEXPAND|wxTOP|wxBOTTOM, 5 ); - + m_showAllNetsOpt = new wxCheckBox( sbSizer3->GetStaticBox(), wxID_ANY, _("Show all nets"), wxDefaultPosition, wxDefaultSize, 0 ); bFilteringSizer->Add( m_showAllNetsOpt, 0, wxALL, 5 ); - - + + bFilteringSizer->Add( 0, 0, 0, wxEXPAND|wxTOP, 5 ); - + m_sortByPadsOpt = new wxCheckBox( sbSizer3->GetStaticBox(), wxID_ANY, _("Sort nets by pad count"), wxDefaultPosition, wxDefaultSize, 0 ); bFilteringSizer->Add( m_sortByPadsOpt, 0, wxTOP|wxRIGHT|wxLEFT, 5 ); - + m_bNoNetWarning = new wxBoxSizer( wxHORIZONTAL ); - + m_bitmapNoNetWarning = new wxStaticBitmap( sbSizer3->GetStaticBox(), wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 ); m_bNoNetWarning->Add( m_bitmapNoNetWarning, 0, wxTOP|wxBOTTOM|wxLEFT, 8 ); - + m_staticText18 = new wxStaticText( sbSizer3->GetStaticBox(), wxID_ANY, _("No net will result\nin an unconnected \ncopper island."), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText18->Wrap( -1 ); m_bNoNetWarning->Add( m_staticText18, 0, wxALL, 5 ); - - + + bFilteringSizer->Add( m_bNoNetWarning, 1, wxEXPAND|wxRESERVE_SPACE_EVEN_IF_HIDDEN|wxTOP, 20 ); - - + + sbSizer3->Add( bFilteringSizer, 0, wxEXPAND, 20 ); - - + + m_OptionsBoxSizer->Add( sbSizer3, 1, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 ); - - + + m_MainBoxSizer->Add( m_OptionsBoxSizer, 1, wxEXPAND|wxRIGHT|wxLEFT, 5 ); - + wxBoxSizer* bSizerMiddle; bSizerMiddle = new wxBoxSizer( wxHORIZONTAL ); - + wxStaticBoxSizer* m_ExportableSetupSizer; m_ExportableSetupSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Shape") ), wxHORIZONTAL ); - + wxGridBagSizer* gbSizer1; gbSizer1 = new wxGridBagSizer( 0, 0 ); gbSizer1->SetFlexibleDirection( wxBOTH ); gbSizer1->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); - + m_constrainOutline = new wxCheckBox( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, _("Constrain outline to H, V and 45 degrees"), wxDefaultPosition, wxDefaultSize, 0 ); - gbSizer1->Add( m_constrainOutline, wxGBPosition( 0, 0 ), wxGBSpan( 1, 3 ), wxBOTTOM|wxRIGHT, 5 ); - + gbSizer1->Add( m_constrainOutline, wxGBPosition( 0, 0 ), wxGBSpan( 1, 3 ), wxTOP|wxBOTTOM|wxRIGHT, 5 ); + m_staticTextPriorityLevel = new wxStaticText( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, _("Zone priority level:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextPriorityLevel->Wrap( -1 ); m_staticTextPriorityLevel->SetToolTip( _("Zones are filled by priority level, level 3 has higher priority than level 2.\nWhen a zone is inside another zone:\n* If its priority is higher, its outlines are removed from the other zone.\n* If its priority is equal, a DRC error is set.") ); - + gbSizer1->Add( m_staticTextPriorityLevel, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 ); - + m_PriorityLevelCtrl = new wxSpinCtrl( m_ExportableSetupSizer->GetStaticBox(), ID_M_PRIORITYLEVELCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 100, 0 ); gbSizer1->Add( m_PriorityLevelCtrl, wxGBPosition( 1, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxALL, 5 ); - + m_staticTextStyle = new wxStaticText( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, _("Outline display:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextStyle->Wrap( -1 ); gbSizer1->Add( m_staticTextStyle, wxGBPosition( 2, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 ); - + wxString m_OutlineAppearanceCtrlChoices[] = { _("Line"), _("Hatched"), _("Fully hatched") }; int m_OutlineAppearanceCtrlNChoices = sizeof( m_OutlineAppearanceCtrlChoices ) / sizeof( wxString ); m_OutlineAppearanceCtrl = new wxChoice( m_ExportableSetupSizer->GetStaticBox(), ID_M_OUTLINEAPPEARANCECTRL, wxDefaultPosition, wxDefaultSize, m_OutlineAppearanceCtrlNChoices, m_OutlineAppearanceCtrlChoices, 0 ); m_OutlineAppearanceCtrl->SetSelection( 0 ); gbSizer1->Add( m_OutlineAppearanceCtrl, wxGBPosition( 2, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - + m_staticline1 = new wxStaticLine( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL ); gbSizer1->Add( m_staticline1, wxGBPosition( 3, 0 ), wxGBSpan( 1, 3 ), wxEXPAND|wxTOP|wxBOTTOM|wxRIGHT, 5 ); - + m_staticTextSmoothing = new wxStaticText( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, _("Corner smoothing:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextSmoothing->Wrap( -1 ); gbSizer1->Add( m_staticTextSmoothing, wxGBPosition( 4, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 ); - + wxString m_cornerSmoothingChoiceChoices[] = { _("None"), _("Chamfer"), _("Fillet") }; int m_cornerSmoothingChoiceNChoices = sizeof( m_cornerSmoothingChoiceChoices ) / sizeof( wxString ); m_cornerSmoothingChoice = new wxChoice( m_ExportableSetupSizer->GetStaticBox(), ID_CORNER_SMOOTHING, wxDefaultPosition, wxDefaultSize, m_cornerSmoothingChoiceNChoices, m_cornerSmoothingChoiceChoices, 0 ); m_cornerSmoothingChoice->SetSelection( 0 ); gbSizer1->Add( m_cornerSmoothingChoice, wxGBPosition( 4, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxALL, 5 ); - + m_cornerRadiusLabel = new wxStaticText( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, _("Chamfer distance:"), wxDefaultPosition, wxDefaultSize, 0 ); m_cornerRadiusLabel->Wrap( -1 ); gbSizer1->Add( m_cornerRadiusLabel, wxGBPosition( 5, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 ); - + m_cornerRadiusCtrl = new wxTextCtrl( m_ExportableSetupSizer->GetStaticBox(), ID_M_CORNERSMOOTHINGCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); gbSizer1->Add( m_cornerRadiusCtrl, wxGBPosition( 5, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 ); - + m_cornerRadiusUnits = new wxStaticText( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, _("units"), wxDefaultPosition, wxDefaultSize, 0 ); m_cornerRadiusUnits->Wrap( -1 ); gbSizer1->Add( m_cornerRadiusUnits, wxGBPosition( 5, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 ); - - + + gbSizer1->AddGrowableCol( 1 ); - + m_ExportableSetupSizer->Add( gbSizer1, 0, wxEXPAND|wxRIGHT|wxLEFT, 5 ); - - + + bSizerMiddle->Add( m_ExportableSetupSizer, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 10 ); - + wxStaticBoxSizer* sbSizer5; - sbSizer5 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Electrical") ), wxVERTICAL ); - + sbSizer5 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Electrical Properties") ), wxVERTICAL ); + wxGridBagSizer* gbSizerSettings; gbSizerSettings = new wxGridBagSizer( 0, 0 ); gbSizerSettings->SetFlexibleDirection( wxBOTH ); gbSizerSettings->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); - + m_clearanceLabel = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("Clearance:"), wxDefaultPosition, wxDefaultSize, 0 ); m_clearanceLabel->Wrap( -1 ); gbSizerSettings->Add( m_clearanceLabel, wxGBPosition( 0, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxLEFT|wxRIGHT, 5 ); - + m_clearanceCtrl = new wxTextCtrl( sbSizer5->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); gbSizerSettings->Add( m_clearanceCtrl, wxGBPosition( 0, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 ); - + m_clearanceUnits = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("units"), wxDefaultPosition, wxDefaultSize, 0 ); m_clearanceUnits->Wrap( -1 ); gbSizerSettings->Add( m_clearanceUnits, wxGBPosition( 0, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 ); - + m_minWidthLabel = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("Minimum width:"), wxDefaultPosition, wxDefaultSize, 0 ); m_minWidthLabel->Wrap( -1 ); m_minWidthLabel->SetToolTip( _("Minimum thickness of filled areas.") ); - + gbSizerSettings->Add( m_minWidthLabel, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ), wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 ); - + m_minWidthCtrl = new wxTextCtrl( sbSizer5->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); gbSizerSettings->Add( m_minWidthCtrl, wxGBPosition( 1, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 ); - + m_minWidthUnits = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("units"), wxDefaultPosition, wxDefaultSize, 0 ); m_minWidthUnits->Wrap( -1 ); gbSizerSettings->Add( m_minWidthUnits, wxGBPosition( 1, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 ); - + m_connectionLabel = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("Pad connections:"), wxDefaultPosition, wxDefaultSize, 0 ); m_connectionLabel->Wrap( -1 ); m_connectionLabel->SetToolTip( _("Default pad connection type to zone.\nThis setting can be overridden by local pad settings") ); - + gbSizerSettings->Add( m_connectionLabel, wxGBPosition( 2, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - + wxString m_PadInZoneOptChoices[] = { _("Solid"), _("Thermal reliefs"), _("Reliefs for PTH"), _("None") }; int m_PadInZoneOptNChoices = sizeof( m_PadInZoneOptChoices ) / sizeof( wxString ); m_PadInZoneOpt = new wxChoice( sbSizer5->GetStaticBox(), ID_M_PADINZONEOPT, wxDefaultPosition, wxDefaultSize, m_PadInZoneOptNChoices, m_PadInZoneOptChoices, 0 ); m_PadInZoneOpt->SetSelection( 0 ); gbSizerSettings->Add( m_PadInZoneOpt, wxGBPosition( 2, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxALL, 5 ); - + m_antipadLabel = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("Thermal clearance:"), wxDefaultPosition, wxDefaultSize, 0 ); m_antipadLabel->Wrap( -1 ); gbSizerSettings->Add( m_antipadLabel, wxGBPosition( 3, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT|wxLEFT, 5 ); - + m_antipadCtrl = new wxTextCtrl( sbSizer5->GetStaticBox(), wxID_ANTIPAD_SIZE, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); m_antipadCtrl->SetToolTip( _("Clearance between pads in the same net and filled areas.") ); - + gbSizerSettings->Add( m_antipadCtrl, wxGBPosition( 3, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 ); - + m_antipadUnits = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("units"), wxDefaultPosition, wxDefaultSize, 0 ); m_antipadUnits->Wrap( -1 ); gbSizerSettings->Add( m_antipadUnits, wxGBPosition( 3, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 5 ); - + m_spokeWidthLabel = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("Thermal spoke width:"), wxDefaultPosition, wxDefaultSize, 0 ); m_spokeWidthLabel->Wrap( -1 ); gbSizerSettings->Add( m_spokeWidthLabel, wxGBPosition( 4, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - + m_spokeWidthCtrl = new wxTextCtrl( sbSizer5->GetStaticBox(), wxID_COPPER_BRIDGE_VALUE, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); m_spokeWidthCtrl->SetToolTip( _("Width of copper in thermal reliefs.") ); - + gbSizerSettings->Add( m_spokeWidthCtrl, wxGBPosition( 4, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxALL, 5 ); - + m_spokeWidthUnits = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("units"), wxDefaultPosition, wxDefaultSize, 0 ); m_spokeWidthUnits->Wrap( -1 ); gbSizerSettings->Add( m_spokeWidthUnits, wxGBPosition( 4, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 ); - - + + gbSizerSettings->AddGrowableCol( 1 ); - + sbSizer5->Add( gbSizerSettings, 0, wxEXPAND|wxRIGHT|wxLEFT, 5 ); - - + + bSizerMiddle->Add( sbSizer5, 1, wxEXPAND|wxTOP|wxRIGHT, 10 ); - + wxStaticBoxSizer* sbSizerZoneStyle; sbSizerZoneStyle = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Fill") ), wxVERTICAL ); - + wxFlexGridSizer* fgSizerZoneStyle; fgSizerZoneStyle = new wxFlexGridSizer( 0, 3, 0, 0 ); fgSizerZoneStyle->AddGrowableCol( 1 ); fgSizerZoneStyle->SetFlexibleDirection( wxBOTH ); fgSizerZoneStyle->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); - + m_staticTextGridFillType = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("Fill type:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextGridFillType->Wrap( -1 ); fgSizerZoneStyle->Add( m_staticTextGridFillType, 0, wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 ); - + wxString m_GridStyleCtrlChoices[] = { _("Solid shape"), _("Hatch pattern") }; int m_GridStyleCtrlNChoices = sizeof( m_GridStyleCtrlChoices ) / sizeof( wxString ); m_GridStyleCtrl = new wxChoice( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_GridStyleCtrlNChoices, m_GridStyleCtrlChoices, 0 ); m_GridStyleCtrl->SetSelection( 0 ); fgSizerZoneStyle->Add( m_GridStyleCtrl, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 ); - - + + fgSizerZoneStyle->Add( 0, 0, 1, wxEXPAND, 5 ); - + m_staticTextGrindOrient = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("Orientation:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextGrindOrient->Wrap( -1 ); fgSizerZoneStyle->Add( m_staticTextGrindOrient, 0, wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 ); - + m_tcGridStyleOrientation = new wxTextCtrl( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); fgSizerZoneStyle->Add( m_tcGridStyleOrientation, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 ); - + m_staticTextRotUnits = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("deg"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextRotUnits->Wrap( -1 ); fgSizerZoneStyle->Add( m_staticTextRotUnits, 0, wxBOTTOM|wxRIGHT|wxALIGN_CENTER_VERTICAL, 5 ); - + m_staticTextStyleThickness = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("Hatch width:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextStyleThickness->Wrap( -1 ); fgSizerZoneStyle->Add( m_staticTextStyleThickness, 0, wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 ); - + m_tcGridStyleThickness = new wxTextCtrl( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); fgSizerZoneStyle->Add( m_tcGridStyleThickness, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 ); - + m_GridStyleThicknessUnits = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("units"), wxDefaultPosition, wxDefaultSize, 0 ); m_GridStyleThicknessUnits->Wrap( -1 ); fgSizerZoneStyle->Add( m_GridStyleThicknessUnits, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 ); - + m_staticTextGridGap = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("Hatch gap:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextGridGap->Wrap( -1 ); fgSizerZoneStyle->Add( m_staticTextGridGap, 0, wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 ); - + m_tcGridStyleGap = new wxTextCtrl( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); fgSizerZoneStyle->Add( m_tcGridStyleGap, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 ); - + m_GridStyleGapUnits = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("units"), wxDefaultPosition, wxDefaultSize, 0 ); m_GridStyleGapUnits->Wrap( -1 ); fgSizerZoneStyle->Add( m_GridStyleGapUnits, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 ); - + m_staticTextGridSmoothingLevel = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("Smoothing effort:"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextGridSmoothingLevel->Wrap( -1 ); m_staticTextGridSmoothingLevel->SetToolTip( _("Value of smoothing effort\n0 = no smoothing\n1 = chamfer\n2 = round corners\n3 = round corners (finer shape)") ); - + fgSizerZoneStyle->Add( m_staticTextGridSmoothingLevel, 0, wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 ); - + m_spinCtrlSmoothLevel = new wxSpinCtrl( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 3, 0 ); fgSizerZoneStyle->Add( m_spinCtrlSmoothLevel, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 ); - - + + fgSizerZoneStyle->Add( 0, 0, 1, wxEXPAND, 5 ); - + m_staticTextGridSmootingVal = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("Smooth value (0..1):"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextGridSmootingVal->Wrap( -1 ); m_staticTextGridSmootingVal->SetToolTip( _("Ratio between smoothed corners size and the gap between lines\n0 = no smoothing\n1.0 = max radius/chamfer size (half gap value)") ); - + fgSizerZoneStyle->Add( m_staticTextGridSmootingVal, 0, wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 ); - + m_spinCtrlSmoothValue = new wxSpinCtrlDouble( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 1, 0.100000, 0.1 ); + m_spinCtrlSmoothValue->SetDigits( 0 ); fgSizerZoneStyle->Add( m_spinCtrlSmoothValue, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 ); - - + + fgSizerZoneStyle->Add( 0, 0, 1, wxEXPAND, 5 ); - - + + sbSizerZoneStyle->Add( fgSizerZoneStyle, 1, wxEXPAND, 5 ); - - + + bSizerMiddle->Add( sbSizerZoneStyle, 1, wxEXPAND|wxTOP|wxRIGHT, 10 ); - - + + m_MainBoxSizer->Add( bSizerMiddle, 0, wxEXPAND, 5 ); - + wxBoxSizer* bSizerbottom; bSizerbottom = new wxBoxSizer( wxHORIZONTAL ); - + m_ExportSetupButton = new wxButton( this, wxID_BUTTON_EXPORT, _("Export Settings to Other Zones"), wxDefaultPosition, wxDefaultSize, 0 ); m_ExportSetupButton->SetToolTip( _("Export this zone setup (excluding layer and net selection) to all other copper zones.") ); - + bSizerbottom->Add( m_ExportSetupButton, 0, wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 10 ); - + m_sdbSizer = new wxStdDialogButtonSizer(); m_sdbSizerOK = new wxButton( this, wxID_OK ); m_sdbSizer->AddButton( m_sdbSizerOK ); m_sdbSizerCancel = new wxButton( this, wxID_CANCEL ); m_sdbSizer->AddButton( m_sdbSizerCancel ); m_sdbSizer->Realize(); - + bSizerbottom->Add( m_sdbSizer, 1, wxALL|wxEXPAND, 5 ); - - + + m_MainBoxSizer->Add( bSizerbottom, 0, wxEXPAND|wxLEFT, 5 ); - - + + this->SetSizer( m_MainBoxSizer ); this->Layout(); m_MainBoxSizer->Fit( this ); - + // Connect Events this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( DIALOG_COPPER_ZONE_BASE::OnClose ) ); this->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_COPPER_ZONE_BASE::OnUpdateUI ) ); @@ -377,5 +378,5 @@ DIALOG_COPPER_ZONE_BASE::~DIALOG_COPPER_ZONE_BASE() m_GridStyleCtrl->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_COPPER_ZONE_BASE::OnStyleSelection ), NULL, this ); m_ExportSetupButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_COPPER_ZONE_BASE::ExportSetupToOtherCopperZones ), NULL, this ); m_sdbSizerCancel->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_COPPER_ZONE_BASE::OnButtonCancelClick ), NULL, this ); - + } diff --git a/pcbnew/dialogs/dialog_copper_zones_base.fbp b/pcbnew/dialogs/dialog_copper_zones_base.fbp index dfebf49352..7f49ff7659 100644 --- a/pcbnew/dialogs/dialog_copper_zones_base.fbp +++ b/pcbnew/dialogs/dialog_copper_zones_base.fbp @@ -1,6 +1,6 @@ - + C++ @@ -14,6 +14,8 @@ dialog_copper_zones_base 1000 none + + 1 dialog_copper_zones_base @@ -24,6 +26,7 @@ 1 1 UI + 0 1 0 @@ -52,41 +55,7 @@ - - - - - - - - - OnClose - - - - - - - - - - - - - - - - - - - - - - - - - OnUpdateUI @@ -114,7 +83,6 @@ wxVERTICAL 1 none - 5 wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT @@ -140,47 +108,7 @@ wxBORDER_SIMPLE - - - - - - - - - - - - - - - - - OnLayerSelection - - - - - - - - - - - - - - - - - - - - - - - @@ -197,7 +125,6 @@ wxHORIZONTAL 1 none - 5 wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT @@ -259,31 +186,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - @@ -328,6 +230,7 @@ 0 wxID_ANY Hide nets matching: + 0 0 @@ -353,29 +256,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -440,33 +320,7 @@ - - - - - - - - - - - - - - - - - - - - - - - OnRunFiltersButtonClick - - - @@ -502,6 +356,7 @@ 0 wxID_ANY Show nets matching: + 0 0 @@ -527,29 +382,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -614,33 +446,7 @@ - - - - - - - - - - - - - - - - - - - - - - - OnRunFiltersButtonClick - - - @@ -658,25 +464,31 @@ + 1 0 1 1 + 0 0 + Dock 0 Left 1 1 + 0 0 wxID_APPLY_FILTERS Apply Filters + + 0 0 @@ -691,6 +503,8 @@ protected 1 + + Resizable 1 @@ -706,29 +520,6 @@ OnRunFiltersButtonClick - - - - - - - - - - - - - - - - - - - - - - - @@ -803,30 +594,7 @@ - OnNetSortingOptionSelected - - - - - - - - - - - - - - - - - - - - - - @@ -901,30 +669,7 @@ - OnNetSortingOptionSelected - - - - - - - - - - - - - - - - - - - - - - @@ -992,29 +737,6 @@ - - - - - - - - - - - - - - - - - - - - - - - @@ -1050,6 +772,7 @@ 0 wxID_ANY No net will result in an unconnected copper island. + 0 0 @@ -1075,29 +798,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -1129,7 +829,6 @@ wxHORIZONTAL 1 none - 5 wxEXPAND|wxRIGHT|wxLEFT @@ -1149,7 +848,7 @@ 5 3 0 - wxBOTTOM|wxRIGHT + wxTOP|wxBOTTOM|wxRIGHT 0 1 @@ -1210,30 +909,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - @@ -1272,6 +947,7 @@ 0 wxID_ANY Zone priority level: + 0 0 @@ -1297,29 +973,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -1385,32 +1038,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -1449,6 +1076,7 @@ 0 wxID_ANY Outline display: + 0 0 @@ -1474,29 +1102,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -1564,30 +1169,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - @@ -1649,29 +1230,6 @@ - - - - - - - - - - - - - - - - - - - - - - - @@ -1710,6 +1268,7 @@ 0 wxID_ANY Corner smoothing: + 0 0 @@ -1735,29 +1294,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -1825,30 +1361,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - @@ -1887,6 +1399,7 @@ 0 wxID_ANY Chamfer distance: + 0 0 @@ -1912,29 +1425,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -2002,33 +1492,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -2067,6 +1530,7 @@ 0 wxID_ANY units + 0 0 @@ -2092,29 +1556,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -2127,13 +1568,12 @@ 1 wxID_ANY - Electrical + Electrical Properties sbSizer5 wxVERTICAL 1 none - 5 wxEXPAND|wxRIGHT|wxLEFT @@ -2185,6 +1625,7 @@ 0 wxID_ANY Clearance: + 0 0 @@ -2210,29 +1651,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -2300,33 +1718,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -2365,6 +1756,7 @@ 0 wxID_ANY units + 0 0 @@ -2390,29 +1782,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -2451,6 +1820,7 @@ 0 wxID_ANY Minimum width: + 0 0 @@ -2476,29 +1846,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -2566,33 +1913,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -2631,6 +1951,7 @@ 0 wxID_ANY units + 0 0 @@ -2656,29 +1977,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -2717,6 +2015,7 @@ 0 wxID_ANY Pad connections: + 0 0 @@ -2742,29 +2041,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -2832,30 +2108,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - @@ -2894,6 +2146,7 @@ 0 wxID_ANY Thermal clearance: + 0 0 @@ -2919,29 +2172,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -3009,33 +2239,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -3074,6 +2277,7 @@ 0 wxID_ANY units + 0 0 @@ -3099,29 +2303,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -3160,6 +2341,7 @@ 0 wxID_ANY Thermal spoke width: + 0 0 @@ -3185,29 +2367,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -3275,33 +2434,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -3340,6 +2472,7 @@ 0 wxID_ANY units + 0 0 @@ -3365,29 +2498,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -3406,7 +2516,6 @@ wxVERTICAL 1 none - 5 wxEXPAND @@ -3456,6 +2565,7 @@ 0 wxID_ANY Fill type: + 0 0 @@ -3481,29 +2591,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -3568,30 +2655,7 @@ - OnStyleSelection - - - - - - - - - - - - - - - - - - - - - - @@ -3637,6 +2701,7 @@ 0 wxID_ANY Orientation: + 0 0 @@ -3662,29 +2727,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -3749,33 +2791,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -3811,6 +2826,7 @@ 0 wxID_ANY deg + 0 0 @@ -3836,29 +2852,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -3894,6 +2887,7 @@ 0 wxID_ANY Hatch width: + 0 0 @@ -3919,29 +2913,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -4006,33 +2977,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -4068,6 +3012,7 @@ 0 wxID_ANY units + 0 0 @@ -4093,29 +3038,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -4151,6 +3073,7 @@ 0 wxID_ANY Hatch gap: + 0 0 @@ -4176,29 +3099,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -4263,33 +3163,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -4325,6 +3198,7 @@ 0 wxID_ANY units + 0 0 @@ -4350,29 +3224,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -4408,6 +3259,7 @@ 0 wxID_ANY Smoothing effort: + 0 0 @@ -4433,29 +3285,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -4518,32 +3347,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -4589,6 +3392,7 @@ 0 wxID_ANY Smooth value (0..1): + 0 0 @@ -4614,29 +3418,6 @@ -1 - - - - - - - - - - - - - - - - - - - - - - - @@ -4661,6 +3442,7 @@ 1 0 + 0 Dock 0 Left @@ -4700,30 +3482,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - @@ -4766,25 +3524,31 @@ + 1 0 1 1 + 0 0 + Dock 0 Left 1 1 + 0 0 wxID_BUTTON_EXPORT Export Settings to Other Zones + + 0 0 @@ -4799,6 +3563,8 @@ protected 1 + + Resizable 1 @@ -4814,29 +3580,6 @@ ExportSetupToOtherCopperZones - - - - - - - - - - - - - - - - - - - - - - - @@ -4855,14 +3598,7 @@ m_sdbSizer protected - OnButtonCancelClick - - - - - - diff --git a/pcbnew/dialogs/dialog_copper_zones_base.h b/pcbnew/dialogs/dialog_copper_zones_base.h index 2fc13ec2ec..63f46698aa 100644 --- a/pcbnew/dialogs/dialog_copper_zones_base.h +++ b/pcbnew/dialogs/dialog_copper_zones_base.h @@ -1,12 +1,11 @@ /////////////////////////////////////////////////////////////////////////// -// C++ code generated with wxFormBuilder (version Dec 30 2017) +// C++ code generated with wxFormBuilder (version Jul 10 2019) // http://www.wxformbuilder.org/ // // PLEASE DO *NOT* EDIT THIS FILE! /////////////////////////////////////////////////////////////////////////// -#ifndef __DIALOG_COPPER_ZONES_BASE_H__ -#define __DIALOG_COPPER_ZONES_BASE_H__ +#pragma once #include #include @@ -23,11 +22,11 @@ #include #include #include -#include -#include #include #include #include +#include +#include #include #include #include @@ -43,7 +42,7 @@ class DIALOG_COPPER_ZONE_BASE : public DIALOG_SHIM { private: - + protected: enum { @@ -60,7 +59,7 @@ class DIALOG_COPPER_ZONE_BASE : public DIALOG_SHIM wxID_COPPER_BRIDGE_VALUE, wxID_BUTTON_EXPORT }; - + wxBoxSizer* m_MainBoxSizer; wxDataViewListCtrl* m_layers; wxListBox* m_ListNetNameSelection; @@ -118,7 +117,7 @@ class DIALOG_COPPER_ZONE_BASE : public DIALOG_SHIM wxStdDialogButtonSizer* m_sdbSizer; wxButton* m_sdbSizerOK; wxButton* m_sdbSizerCancel; - + // Virtual event handlers, overide them in your derived class virtual void OnClose( wxCloseEvent& event ) { event.Skip(); } virtual void OnUpdateUI( wxUpdateUIEvent& event ) { event.Skip(); } @@ -128,13 +127,12 @@ class DIALOG_COPPER_ZONE_BASE : public DIALOG_SHIM virtual void OnStyleSelection( wxCommandEvent& event ) { event.Skip(); } virtual void ExportSetupToOtherCopperZones( wxCommandEvent& event ) { event.Skip(); } virtual void OnButtonCancelClick( wxCommandEvent& event ) { event.Skip(); } - - + + public: - - DIALOG_COPPER_ZONE_BASE( wxWindow* parent, wxWindowID id = ID_DIALOG_COPPER_ZONE_BASE, const wxString& title = _("Copper Zone Properties"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER ); + + DIALOG_COPPER_ZONE_BASE( wxWindow* parent, wxWindowID id = ID_DIALOG_COPPER_ZONE_BASE, const wxString& title = _("Copper Zone Properties"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER ); ~DIALOG_COPPER_ZONE_BASE(); - + }; -#endif //__DIALOG_COPPER_ZONES_BASE_H__ diff --git a/pcbnew/footprint_edit_frame.cpp b/pcbnew/footprint_edit_frame.cpp index 3daa4d666d..3159dd26e2 100644 --- a/pcbnew/footprint_edit_frame.cpp +++ b/pcbnew/footprint_edit_frame.cpp @@ -450,7 +450,7 @@ void FOOTPRINT_EDIT_FRAME::OnCloseWindow( wxCloseEvent& Event ) if( GetScreen()->IsModify() && GetBoard()->GetFirstModule() ) { wxString footprintName = GetBoard()->GetFirstModule()->GetFPID().GetLibItemName(); - wxString msg = _( "Save changes to \"%s\" before closing? " ); + wxString msg = _( "Save changes to \"%s\" before closing?" ); if( !HandleUnsavedChanges( this, wxString::Format( msg, footprintName ), [&]() -> bool { return SaveFootprint( GetBoard()->GetFirstModule() ); } ) ) @@ -756,7 +756,7 @@ void FOOTPRINT_EDIT_FRAME::OnUpdateLayerAlpha( wxUpdateUIEvent & ) } -void FOOTPRINT_EDIT_FRAME::InstallPreferences( PAGED_DIALOG* aParent, +void FOOTPRINT_EDIT_FRAME::InstallPreferences( PAGED_DIALOG* aParent, PANEL_HOTKEYS_EDITOR* aHotkeysPanel ) { wxTreebook* book = aParent->GetTreebook(); @@ -764,7 +764,7 @@ void FOOTPRINT_EDIT_FRAME::InstallPreferences( PAGED_DIALOG* aParent, book->AddPage( new PANEL_MODEDIT_SETTINGS( this, aParent ), _( "Footprint Editor" ) ); book->AddSubPage( new PANEL_MODEDIT_DISPLAY_OPTIONS( this, aParent ), _( "Display Options" ) ); book->AddSubPage( new PANEL_MODEDIT_DEFAULTS( this, aParent ), _( "Default Values" ) ); - + aHotkeysPanel->AddHotKeys( GetToolManager() ); }