Fix issues in dialog drc: because it is not modal, DRC parameters and unit selection can be modified outside the dialog, still opened. Now, the new parameters are taken in account.
Fixa also a corner case which crashes Pcbnew: if the dialog is opened, and the board was changed (reloaded, cleared), pcbnew crashed because many pointers stored in dialog become invalid. Now the dialog is just closed.
This commit is contained in:
parent
829fa97f3c
commit
bcd345c29f
|
@ -7,7 +7,7 @@
|
||||||
*
|
*
|
||||||
* Copyright (C) 2015 Jean-Pierre Charras, jean-pierre.charras@ujf-grenoble.fr
|
* Copyright (C) 2015 Jean-Pierre Charras, jean-pierre.charras@ujf-grenoble.fr
|
||||||
* Copyright (C) 2009 Dick Hollenbeck, dick@softplc.com
|
* Copyright (C) 2009 Dick Hollenbeck, dick@softplc.com
|
||||||
* Copyright (C) 2004-2015 KiCad Developers, see change_log.txt for contributors.
|
* Copyright (C) 2004-2016 KiCad Developers, see change_log.txt for contributors.
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
|
@ -43,6 +43,7 @@ DIALOG_DRC_CONTROL::DIALOG_DRC_CONTROL( DRC* aTester, PCB_EDIT_FRAME* parent ) :
|
||||||
{
|
{
|
||||||
m_tester = aTester;
|
m_tester = aTester;
|
||||||
m_Parent = parent;
|
m_Parent = parent;
|
||||||
|
m_currentBoard = m_Parent->GetBoard();
|
||||||
m_BrdSettings = m_Parent->GetBoard()->GetDesignSettings();
|
m_BrdSettings = m_Parent->GetBoard()->GetDesignSettings();
|
||||||
|
|
||||||
InitValues();
|
InitValues();
|
||||||
|
@ -55,6 +56,39 @@ DIALOG_DRC_CONTROL::DIALOG_DRC_CONTROL( DRC* aTester, PCB_EDIT_FRAME* parent ) :
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void DIALOG_DRC_CONTROL::OnActivateDlg( wxActivateEvent& event )
|
||||||
|
{
|
||||||
|
if( m_currentBoard != m_Parent->GetBoard() )
|
||||||
|
{
|
||||||
|
// If m_currentBoard is not the current parent board,
|
||||||
|
// (for instance because a new board was loaded),
|
||||||
|
// close the dialog, because many pointers are now invalid
|
||||||
|
// in lists
|
||||||
|
SetReturnCode( wxID_CANCEL );
|
||||||
|
Close();
|
||||||
|
m_tester->DestroyDialog( wxID_CANCEL );
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// updating data which can be modified outside the dialog (DRC parameters, units ...)
|
||||||
|
// because the dialog is not modal
|
||||||
|
m_BrdSettings = m_Parent->GetBoard()->GetDesignSettings();
|
||||||
|
DisplayDRCValues();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void DIALOG_DRC_CONTROL::DisplayDRCValues()
|
||||||
|
{
|
||||||
|
m_TrackMinWidthUnit->SetLabel( GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
|
m_ViaMinUnit->SetLabel( GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
|
m_MicroViaMinUnit->SetLabel(GetAbbreviatedUnitsLabel( g_UserUnit ) );
|
||||||
|
|
||||||
|
PutValueInLocalUnits( *m_SetTrackMinWidthCtrl, m_BrdSettings.m_TrackMinWidth );
|
||||||
|
PutValueInLocalUnits( *m_SetViaMinSizeCtrl, m_BrdSettings.m_ViasMinSize );
|
||||||
|
PutValueInLocalUnits( *m_SetMicroViakMinSizeCtrl, m_BrdSettings.m_MicroViasMinSize );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void DIALOG_DRC_CONTROL::InitValues()
|
void DIALOG_DRC_CONTROL::InitValues()
|
||||||
{
|
{
|
||||||
// Connect events and objects
|
// Connect events and objects
|
||||||
|
@ -71,12 +105,10 @@ void DIALOG_DRC_CONTROL::InitValues()
|
||||||
wxMouseEventHandler(
|
wxMouseEventHandler(
|
||||||
DIALOG_DRC_CONTROL::OnRightUpUnconnected ), NULL, this );
|
DIALOG_DRC_CONTROL::OnRightUpUnconnected ), NULL, this );
|
||||||
|
|
||||||
AddUnitSymbol( *m_TrackMinWidthTitle );
|
|
||||||
AddUnitSymbol( *m_ViaMinTitle );
|
|
||||||
AddUnitSymbol( *m_MicroViaMinTitle );
|
|
||||||
|
|
||||||
m_DeleteCurrentMarkerButton->Enable( false );
|
m_DeleteCurrentMarkerButton->Enable( false );
|
||||||
|
|
||||||
|
DisplayDRCValues();
|
||||||
|
|
||||||
Layout(); // adding the units above expanded Clearance text, now resize.
|
Layout(); // adding the units above expanded Clearance text, now resize.
|
||||||
|
|
||||||
// Set the initial "enabled" status of the browse button and the text
|
// Set the initial "enabled" status of the browse button and the text
|
||||||
|
@ -117,7 +149,6 @@ void DIALOG_DRC_CONTROL::OnStartdrcClick( wxCommandEvent& event )
|
||||||
}
|
}
|
||||||
|
|
||||||
SetDrcParmeters();
|
SetDrcParmeters();
|
||||||
|
|
||||||
m_tester->SetSettings( true, // Pad to pad DRC test enabled
|
m_tester->SetSettings( true, // Pad to pad DRC test enabled
|
||||||
true, // unconnected pdas DRC test enabled
|
true, // unconnected pdas DRC test enabled
|
||||||
true, // DRC test for zones enabled
|
true, // DRC test for zones enabled
|
||||||
|
@ -131,9 +162,8 @@ void DIALOG_DRC_CONTROL::OnStartdrcClick( wxCommandEvent& event )
|
||||||
// run all the tests, with no UI at this time.
|
// run all the tests, with no UI at this time.
|
||||||
m_Messages->Clear();
|
m_Messages->Clear();
|
||||||
wxSafeYield(); // Allows time slice to refresh the m_Messages window
|
wxSafeYield(); // Allows time slice to refresh the m_Messages window
|
||||||
m_tester->m_pcb->m_Status_Pcb = 0; // Force full connectivity and ratsnest recalculations
|
m_Parent->GetBoard()->m_Status_Pcb = 0; // Force full connectivity and ratsnest recalculations
|
||||||
m_tester->RunTests(m_Messages);
|
m_tester->RunTests(m_Messages);
|
||||||
|
|
||||||
m_Notebook->ChangeSelection( 0 ); // display the 1at tab "...Markers ..."
|
m_Notebook->ChangeSelection( 0 ); // display the 1at tab "...Markers ..."
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -71,6 +71,8 @@ private:
|
||||||
|
|
||||||
void InitValues( );
|
void InitValues( );
|
||||||
|
|
||||||
|
void DisplayDRCValues( );
|
||||||
|
|
||||||
void SetDrcParmeters( );
|
void SetDrcParmeters( );
|
||||||
|
|
||||||
/// wxEVT_COMMAND_CHECKBOX_CLICKED event handler for ID_CHECKBOX
|
/// wxEVT_COMMAND_CHECKBOX_CLICKED event handler for ID_CHECKBOX
|
||||||
|
@ -109,6 +111,10 @@ private:
|
||||||
/// wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_OK
|
/// wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_OK
|
||||||
void OnOkClick( wxCommandEvent& event );
|
void OnOkClick( wxCommandEvent& event );
|
||||||
|
|
||||||
|
/// handler for activate event, updating data which can be modified outside the dialog
|
||||||
|
/// (DRC parameters)
|
||||||
|
void OnActivateDlg( wxActivateEvent& event );
|
||||||
|
|
||||||
void OnMarkerSelectionEvent( wxCommandEvent& event );
|
void OnMarkerSelectionEvent( wxCommandEvent& event );
|
||||||
void OnUnconnectedSelectionEvent( wxCommandEvent& event );
|
void OnUnconnectedSelectionEvent( wxCommandEvent& event );
|
||||||
void OnChangingMarkerList( wxNotebookEvent& event );
|
void OnChangingMarkerList( wxNotebookEvent& event );
|
||||||
|
@ -118,6 +124,7 @@ private:
|
||||||
|
|
||||||
void OnPopupMenu( wxCommandEvent& event );
|
void OnPopupMenu( wxCommandEvent& event );
|
||||||
|
|
||||||
|
BOARD* m_currentBoard; // the board currently on test
|
||||||
DRC* m_tester;
|
DRC* m_tester;
|
||||||
PCB_EDIT_FRAME* m_Parent;
|
PCB_EDIT_FRAME* m_Parent;
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// C++ code generated with wxFormBuilder (version Mar 9 2015)
|
// C++ code generated with wxFormBuilder (version Mar 28 2016)
|
||||||
// http://www.wxformbuilder.org/
|
// http://www.wxformbuilder.org/
|
||||||
//
|
//
|
||||||
// PLEASE DO "NOT" EDIT THIS FILE!
|
// PLEASE DO "NOT" EDIT THIS FILE!
|
||||||
|
@ -28,70 +28,86 @@ DIALOG_DRC_CONTROL_BASE::DIALOG_DRC_CONTROL_BASE( wxWindow* parent, wxWindowID i
|
||||||
bSizer7 = new wxBoxSizer( wxVERTICAL );
|
bSizer7 = new wxBoxSizer( wxVERTICAL );
|
||||||
|
|
||||||
wxFlexGridSizer* fgMinValuesSizer;
|
wxFlexGridSizer* fgMinValuesSizer;
|
||||||
fgMinValuesSizer = new wxFlexGridSizer( 4, 2, 0, 0 );
|
fgMinValuesSizer = new wxFlexGridSizer( 4, 3, 0, 0 );
|
||||||
fgMinValuesSizer->AddGrowableCol( 1 );
|
fgMinValuesSizer->AddGrowableCol( 1 );
|
||||||
fgMinValuesSizer->SetFlexibleDirection( wxHORIZONTAL );
|
fgMinValuesSizer->SetFlexibleDirection( wxHORIZONTAL );
|
||||||
fgMinValuesSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
|
fgMinValuesSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
|
||||||
|
|
||||||
m_ClearanceTitle = new wxStaticText( this, wxID_ANY, _("Clearance"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_ClearanceTitle = new wxStaticText( sbSizerOptions->GetStaticBox(), wxID_ANY, _("Clearance"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_ClearanceTitle->Wrap( -1 );
|
m_ClearanceTitle->Wrap( -1 );
|
||||||
fgMinValuesSizer->Add( m_ClearanceTitle, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL, 5 );
|
fgMinValuesSizer->Add( m_ClearanceTitle, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL, 5 );
|
||||||
|
|
||||||
m_SetClearance = new wxTextCtrl( this, wxID_ANY, _("By Netclass"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_SetClearance = new wxTextCtrl( sbSizerOptions->GetStaticBox(), wxID_ANY, _("By Netclass"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_SetClearance->SetMaxLength( 0 );
|
|
||||||
m_SetClearance->Enable( false );
|
m_SetClearance->Enable( false );
|
||||||
|
|
||||||
fgMinValuesSizer->Add( m_SetClearance, 0, wxALL|wxEXPAND, 5 );
|
fgMinValuesSizer->Add( m_SetClearance, 0, wxALL|wxEXPAND, 5 );
|
||||||
|
|
||||||
m_TrackMinWidthTitle = new wxStaticText( this, wxID_ANY, _("Min track width"), wxDefaultPosition, wxDefaultSize, 0 );
|
|
||||||
|
fgMinValuesSizer->Add( 0, 0, 1, wxEXPAND, 5 );
|
||||||
|
|
||||||
|
m_TrackMinWidthTitle = new wxStaticText( sbSizerOptions->GetStaticBox(), wxID_ANY, _("Min track width"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_TrackMinWidthTitle->Wrap( -1 );
|
m_TrackMinWidthTitle->Wrap( -1 );
|
||||||
m_TrackMinWidthTitle->SetToolTip( _("Enter the minimum acceptable value for a track width") );
|
m_TrackMinWidthTitle->SetToolTip( _("Enter the minimum acceptable value for a track width") );
|
||||||
|
|
||||||
fgMinValuesSizer->Add( m_TrackMinWidthTitle, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL, 5 );
|
fgMinValuesSizer->Add( m_TrackMinWidthTitle, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL, 5 );
|
||||||
|
|
||||||
m_SetTrackMinWidthCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_SetTrackMinWidthCtrl = new wxTextCtrl( sbSizerOptions->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_SetTrackMinWidthCtrl->SetMaxLength( 0 );
|
|
||||||
fgMinValuesSizer->Add( m_SetTrackMinWidthCtrl, 0, wxALL|wxEXPAND, 5 );
|
fgMinValuesSizer->Add( m_SetTrackMinWidthCtrl, 0, wxALL|wxEXPAND, 5 );
|
||||||
|
|
||||||
m_ViaMinTitle = new wxStaticText( this, wxID_ANY, _("Min via size"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_TrackMinWidthUnit = new wxStaticText( sbSizerOptions->GetStaticBox(), wxID_ANY, _("unit"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
|
m_TrackMinWidthUnit->Wrap( -1 );
|
||||||
|
m_TrackMinWidthUnit->SetToolTip( _("Enter the minimum acceptable value for a track width") );
|
||||||
|
|
||||||
|
fgMinValuesSizer->Add( m_TrackMinWidthUnit, 0, wxALL, 5 );
|
||||||
|
|
||||||
|
m_ViaMinTitle = new wxStaticText( sbSizerOptions->GetStaticBox(), wxID_ANY, _("Min via size"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_ViaMinTitle->Wrap( -1 );
|
m_ViaMinTitle->Wrap( -1 );
|
||||||
m_ViaMinTitle->SetHelpText( _("Enter the minimum acceptable diameter for a standard via") );
|
m_ViaMinTitle->SetHelpText( _("Enter the minimum acceptable diameter for a standard via") );
|
||||||
|
|
||||||
fgMinValuesSizer->Add( m_ViaMinTitle, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL, 5 );
|
fgMinValuesSizer->Add( m_ViaMinTitle, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL, 5 );
|
||||||
|
|
||||||
m_SetViaMinSizeCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_SetViaMinSizeCtrl = new wxTextCtrl( sbSizerOptions->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_SetViaMinSizeCtrl->SetMaxLength( 0 );
|
|
||||||
fgMinValuesSizer->Add( m_SetViaMinSizeCtrl, 0, wxALL|wxEXPAND, 5 );
|
fgMinValuesSizer->Add( m_SetViaMinSizeCtrl, 0, wxALL|wxEXPAND, 5 );
|
||||||
|
|
||||||
m_MicroViaMinTitle = new wxStaticText( this, wxID_ANY, _("Min uVia size"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_ViaMinUnit = new wxStaticText( sbSizerOptions->GetStaticBox(), wxID_ANY, _("unit"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
|
m_ViaMinUnit->Wrap( -1 );
|
||||||
|
m_ViaMinUnit->SetHelpText( _("Enter the minimum acceptable diameter for a standard via") );
|
||||||
|
|
||||||
|
fgMinValuesSizer->Add( m_ViaMinUnit, 0, wxALL, 5 );
|
||||||
|
|
||||||
|
m_MicroViaMinTitle = new wxStaticText( sbSizerOptions->GetStaticBox(), wxID_ANY, _("Min uVia size"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_MicroViaMinTitle->Wrap( -1 );
|
m_MicroViaMinTitle->Wrap( -1 );
|
||||||
m_MicroViaMinTitle->SetToolTip( _("Enter the minimum acceptable diameter for a micro via") );
|
m_MicroViaMinTitle->SetToolTip( _("Enter the minimum acceptable diameter for a micro via") );
|
||||||
|
|
||||||
fgMinValuesSizer->Add( m_MicroViaMinTitle, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL, 5 );
|
fgMinValuesSizer->Add( m_MicroViaMinTitle, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL, 5 );
|
||||||
|
|
||||||
m_SetMicroViakMinSizeCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_SetMicroViakMinSizeCtrl = new wxTextCtrl( sbSizerOptions->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_SetMicroViakMinSizeCtrl->SetMaxLength( 0 );
|
|
||||||
fgMinValuesSizer->Add( m_SetMicroViakMinSizeCtrl, 0, wxALL|wxEXPAND, 5 );
|
fgMinValuesSizer->Add( m_SetMicroViakMinSizeCtrl, 0, wxALL|wxEXPAND, 5 );
|
||||||
|
|
||||||
|
m_MicroViaMinUnit = new wxStaticText( sbSizerOptions->GetStaticBox(), wxID_ANY, _("unit"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
|
m_MicroViaMinUnit->Wrap( -1 );
|
||||||
|
m_MicroViaMinUnit->SetToolTip( _("Enter the minimum acceptable diameter for a micro via") );
|
||||||
|
|
||||||
|
fgMinValuesSizer->Add( m_MicroViaMinUnit, 0, wxALL, 5 );
|
||||||
|
|
||||||
|
|
||||||
bSizer7->Add( fgMinValuesSizer, 1, wxEXPAND, 5 );
|
bSizer7->Add( fgMinValuesSizer, 1, wxEXPAND, 5 );
|
||||||
|
|
||||||
wxStaticBoxSizer* ReportFileSizer;
|
wxStaticBoxSizer* ReportFileSizer;
|
||||||
ReportFileSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Create Report File") ), wxHORIZONTAL );
|
ReportFileSizer = new wxStaticBoxSizer( new wxStaticBox( sbSizerOptions->GetStaticBox(), wxID_ANY, _("Create Report File") ), wxHORIZONTAL );
|
||||||
|
|
||||||
m_CreateRptCtrl = new wxCheckBox( this, ID_CHECKBOX_RPT_FILE, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_CreateRptCtrl = new wxCheckBox( ReportFileSizer->GetStaticBox(), ID_CHECKBOX_RPT_FILE, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_CreateRptCtrl->SetToolTip( _("Enable writing report to this file") );
|
m_CreateRptCtrl->SetToolTip( _("Enable writing report to this file") );
|
||||||
|
|
||||||
ReportFileSizer->Add( m_CreateRptCtrl, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
|
ReportFileSizer->Add( m_CreateRptCtrl, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
|
||||||
|
|
||||||
m_RptFilenameCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_RptFilenameCtrl = new wxTextCtrl( ReportFileSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_RptFilenameCtrl->SetMaxLength( 0 );
|
|
||||||
m_RptFilenameCtrl->SetToolTip( _("Enter the report filename") );
|
m_RptFilenameCtrl->SetToolTip( _("Enter the report filename") );
|
||||||
m_RptFilenameCtrl->SetMinSize( wxSize( 180,-1 ) );
|
m_RptFilenameCtrl->SetMinSize( wxSize( 180,-1 ) );
|
||||||
|
|
||||||
ReportFileSizer->Add( m_RptFilenameCtrl, 1, wxALL|wxEXPAND, 5 );
|
ReportFileSizer->Add( m_RptFilenameCtrl, 1, wxALL|wxEXPAND, 5 );
|
||||||
|
|
||||||
m_BrowseButton = new wxButton( this, ID_BUTTON_BROWSE_RPT_FILE, _("..."), wxDefaultPosition, wxSize( 50,-1 ), 0 );
|
m_BrowseButton = new wxButton( ReportFileSizer->GetStaticBox(), ID_BUTTON_BROWSE_RPT_FILE, _("..."), wxDefaultPosition, wxSize( 50,-1 ), 0 );
|
||||||
ReportFileSizer->Add( m_BrowseButton, 0, wxALIGN_CENTER_VERTICAL, 5 );
|
ReportFileSizer->Add( m_BrowseButton, 0, wxALIGN_CENTER_VERTICAL, 5 );
|
||||||
|
|
||||||
|
|
||||||
|
@ -197,9 +213,9 @@ DIALOG_DRC_CONTROL_BASE::DIALOG_DRC_CONTROL_BASE( wxWindow* parent, wxWindowID i
|
||||||
|
|
||||||
this->SetSizer( m_MainSizer );
|
this->SetSizer( m_MainSizer );
|
||||||
this->Layout();
|
this->Layout();
|
||||||
m_MainSizer->Fit( this );
|
|
||||||
|
|
||||||
// Connect Events
|
// Connect Events
|
||||||
|
this->Connect( wxEVT_ACTIVATE, wxActivateEventHandler( DIALOG_DRC_CONTROL_BASE::OnActivateDlg ) );
|
||||||
m_CreateRptCtrl->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnReportCheckBoxClicked ), NULL, this );
|
m_CreateRptCtrl->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnReportCheckBoxClicked ), NULL, this );
|
||||||
m_BrowseButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnButtonBrowseRptFileClick ), NULL, this );
|
m_BrowseButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnButtonBrowseRptFileClick ), NULL, this );
|
||||||
m_buttonRunDRC->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnStartdrcClick ), NULL, this );
|
m_buttonRunDRC->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnStartdrcClick ), NULL, this );
|
||||||
|
@ -220,6 +236,7 @@ DIALOG_DRC_CONTROL_BASE::DIALOG_DRC_CONTROL_BASE( wxWindow* parent, wxWindowID i
|
||||||
DIALOG_DRC_CONTROL_BASE::~DIALOG_DRC_CONTROL_BASE()
|
DIALOG_DRC_CONTROL_BASE::~DIALOG_DRC_CONTROL_BASE()
|
||||||
{
|
{
|
||||||
// Disconnect Events
|
// Disconnect Events
|
||||||
|
this->Disconnect( wxEVT_ACTIVATE, wxActivateEventHandler( DIALOG_DRC_CONTROL_BASE::OnActivateDlg ) );
|
||||||
m_CreateRptCtrl->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnReportCheckBoxClicked ), NULL, this );
|
m_CreateRptCtrl->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnReportCheckBoxClicked ), NULL, this );
|
||||||
m_BrowseButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnButtonBrowseRptFileClick ), NULL, this );
|
m_BrowseButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnButtonBrowseRptFileClick ), NULL, this );
|
||||||
m_buttonRunDRC->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnStartdrcClick ), NULL, this );
|
m_buttonRunDRC->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnStartdrcClick ), NULL, this );
|
||||||
|
|
|
@ -44,7 +44,7 @@
|
||||||
<property name="minimum_size"></property>
|
<property name="minimum_size"></property>
|
||||||
<property name="name">DIALOG_DRC_CONTROL_BASE</property>
|
<property name="name">DIALOG_DRC_CONTROL_BASE</property>
|
||||||
<property name="pos"></property>
|
<property name="pos"></property>
|
||||||
<property name="size">-1,-1</property>
|
<property name="size">733,438</property>
|
||||||
<property name="style">wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER</property>
|
<property name="style">wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER</property>
|
||||||
<property name="subclass">DIALOG_SHIM; dialog_shim.h</property>
|
<property name="subclass">DIALOG_SHIM; dialog_shim.h</property>
|
||||||
<property name="title">DRC Control</property>
|
<property name="title">DRC Control</property>
|
||||||
|
@ -52,7 +52,7 @@
|
||||||
<property name="window_extra_style"></property>
|
<property name="window_extra_style"></property>
|
||||||
<property name="window_name"></property>
|
<property name="window_name"></property>
|
||||||
<property name="window_style"></property>
|
<property name="window_style"></property>
|
||||||
<event name="OnActivate"></event>
|
<event name="OnActivate">OnActivateDlg</event>
|
||||||
<event name="OnActivateApp"></event>
|
<event name="OnActivateApp"></event>
|
||||||
<event name="OnAuiFindManager"></event>
|
<event name="OnAuiFindManager"></event>
|
||||||
<event name="OnAuiPaneButton"></event>
|
<event name="OnAuiPaneButton"></event>
|
||||||
|
@ -112,6 +112,7 @@
|
||||||
<property name="minimum_size"></property>
|
<property name="minimum_size"></property>
|
||||||
<property name="name">sbSizerOptions</property>
|
<property name="name">sbSizerOptions</property>
|
||||||
<property name="orient">wxHORIZONTAL</property>
|
<property name="orient">wxHORIZONTAL</property>
|
||||||
|
<property name="parent">1</property>
|
||||||
<property name="permission">none</property>
|
<property name="permission">none</property>
|
||||||
<event name="OnUpdateUI"></event>
|
<event name="OnUpdateUI"></event>
|
||||||
<object class="sizeritem" expanded="1">
|
<object class="sizeritem" expanded="1">
|
||||||
|
@ -128,7 +129,7 @@
|
||||||
<property name="flag">wxEXPAND</property>
|
<property name="flag">wxEXPAND</property>
|
||||||
<property name="proportion">1</property>
|
<property name="proportion">1</property>
|
||||||
<object class="wxFlexGridSizer" expanded="1">
|
<object class="wxFlexGridSizer" expanded="1">
|
||||||
<property name="cols">2</property>
|
<property name="cols">3</property>
|
||||||
<property name="flexible_direction">wxHORIZONTAL</property>
|
<property name="flexible_direction">wxHORIZONTAL</property>
|
||||||
<property name="growablecols">1</property>
|
<property name="growablecols">1</property>
|
||||||
<property name="growablerows"></property>
|
<property name="growablerows"></property>
|
||||||
|
@ -313,6 +314,16 @@
|
||||||
<event name="OnUpdateUI"></event>
|
<event name="OnUpdateUI"></event>
|
||||||
</object>
|
</object>
|
||||||
</object>
|
</object>
|
||||||
|
<object class="sizeritem" expanded="1">
|
||||||
|
<property name="border">5</property>
|
||||||
|
<property name="flag">wxEXPAND</property>
|
||||||
|
<property name="proportion">1</property>
|
||||||
|
<object class="spacer" expanded="1">
|
||||||
|
<property name="height">0</property>
|
||||||
|
<property name="permission">protected</property>
|
||||||
|
<property name="width">0</property>
|
||||||
|
</object>
|
||||||
|
</object>
|
||||||
<object class="sizeritem" expanded="1">
|
<object class="sizeritem" expanded="1">
|
||||||
<property name="border">5</property>
|
<property name="border">5</property>
|
||||||
<property name="flag">wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL</property>
|
<property name="flag">wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL</property>
|
||||||
|
@ -487,6 +498,89 @@
|
||||||
<event name="OnUpdateUI"></event>
|
<event name="OnUpdateUI"></event>
|
||||||
</object>
|
</object>
|
||||||
</object>
|
</object>
|
||||||
|
<object class="sizeritem" expanded="1">
|
||||||
|
<property name="border">5</property>
|
||||||
|
<property name="flag">wxALL</property>
|
||||||
|
<property name="proportion">0</property>
|
||||||
|
<object class="wxStaticText" expanded="1">
|
||||||
|
<property name="BottomDockable">1</property>
|
||||||
|
<property name="LeftDockable">1</property>
|
||||||
|
<property name="RightDockable">1</property>
|
||||||
|
<property name="TopDockable">1</property>
|
||||||
|
<property name="aui_layer"></property>
|
||||||
|
<property name="aui_name"></property>
|
||||||
|
<property name="aui_position"></property>
|
||||||
|
<property name="aui_row"></property>
|
||||||
|
<property name="best_size"></property>
|
||||||
|
<property name="bg"></property>
|
||||||
|
<property name="caption"></property>
|
||||||
|
<property name="caption_visible">1</property>
|
||||||
|
<property name="center_pane">0</property>
|
||||||
|
<property name="close_button">1</property>
|
||||||
|
<property name="context_help"></property>
|
||||||
|
<property name="context_menu">1</property>
|
||||||
|
<property name="default_pane">0</property>
|
||||||
|
<property name="dock">Dock</property>
|
||||||
|
<property name="dock_fixed">0</property>
|
||||||
|
<property name="docking">Left</property>
|
||||||
|
<property name="enabled">1</property>
|
||||||
|
<property name="fg"></property>
|
||||||
|
<property name="floatable">1</property>
|
||||||
|
<property name="font"></property>
|
||||||
|
<property name="gripper">0</property>
|
||||||
|
<property name="hidden">0</property>
|
||||||
|
<property name="id">wxID_ANY</property>
|
||||||
|
<property name="label">unit</property>
|
||||||
|
<property name="max_size"></property>
|
||||||
|
<property name="maximize_button">0</property>
|
||||||
|
<property name="maximum_size"></property>
|
||||||
|
<property name="min_size"></property>
|
||||||
|
<property name="minimize_button">0</property>
|
||||||
|
<property name="minimum_size"></property>
|
||||||
|
<property name="moveable">1</property>
|
||||||
|
<property name="name">m_TrackMinWidthUnit</property>
|
||||||
|
<property name="pane_border">1</property>
|
||||||
|
<property name="pane_position"></property>
|
||||||
|
<property name="pane_size"></property>
|
||||||
|
<property name="permission">protected</property>
|
||||||
|
<property name="pin_button">1</property>
|
||||||
|
<property name="pos"></property>
|
||||||
|
<property name="resize">Resizable</property>
|
||||||
|
<property name="show">1</property>
|
||||||
|
<property name="size"></property>
|
||||||
|
<property name="style"></property>
|
||||||
|
<property name="subclass"></property>
|
||||||
|
<property name="toolbar_pane">0</property>
|
||||||
|
<property name="tooltip">Enter the minimum acceptable value for a track width</property>
|
||||||
|
<property name="window_extra_style"></property>
|
||||||
|
<property name="window_name"></property>
|
||||||
|
<property name="window_style"></property>
|
||||||
|
<property name="wrap">-1</property>
|
||||||
|
<event name="OnChar"></event>
|
||||||
|
<event name="OnEnterWindow"></event>
|
||||||
|
<event name="OnEraseBackground"></event>
|
||||||
|
<event name="OnKeyDown"></event>
|
||||||
|
<event name="OnKeyUp"></event>
|
||||||
|
<event name="OnKillFocus"></event>
|
||||||
|
<event name="OnLeaveWindow"></event>
|
||||||
|
<event name="OnLeftDClick"></event>
|
||||||
|
<event name="OnLeftDown"></event>
|
||||||
|
<event name="OnLeftUp"></event>
|
||||||
|
<event name="OnMiddleDClick"></event>
|
||||||
|
<event name="OnMiddleDown"></event>
|
||||||
|
<event name="OnMiddleUp"></event>
|
||||||
|
<event name="OnMotion"></event>
|
||||||
|
<event name="OnMouseEvents"></event>
|
||||||
|
<event name="OnMouseWheel"></event>
|
||||||
|
<event name="OnPaint"></event>
|
||||||
|
<event name="OnRightDClick"></event>
|
||||||
|
<event name="OnRightDown"></event>
|
||||||
|
<event name="OnRightUp"></event>
|
||||||
|
<event name="OnSetFocus"></event>
|
||||||
|
<event name="OnSize"></event>
|
||||||
|
<event name="OnUpdateUI"></event>
|
||||||
|
</object>
|
||||||
|
</object>
|
||||||
<object class="sizeritem" expanded="1">
|
<object class="sizeritem" expanded="1">
|
||||||
<property name="border">5</property>
|
<property name="border">5</property>
|
||||||
<property name="flag">wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL</property>
|
<property name="flag">wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL</property>
|
||||||
|
@ -661,6 +755,89 @@
|
||||||
<event name="OnUpdateUI"></event>
|
<event name="OnUpdateUI"></event>
|
||||||
</object>
|
</object>
|
||||||
</object>
|
</object>
|
||||||
|
<object class="sizeritem" expanded="1">
|
||||||
|
<property name="border">5</property>
|
||||||
|
<property name="flag">wxALL</property>
|
||||||
|
<property name="proportion">0</property>
|
||||||
|
<object class="wxStaticText" expanded="1">
|
||||||
|
<property name="BottomDockable">1</property>
|
||||||
|
<property name="LeftDockable">1</property>
|
||||||
|
<property name="RightDockable">1</property>
|
||||||
|
<property name="TopDockable">1</property>
|
||||||
|
<property name="aui_layer"></property>
|
||||||
|
<property name="aui_name"></property>
|
||||||
|
<property name="aui_position"></property>
|
||||||
|
<property name="aui_row"></property>
|
||||||
|
<property name="best_size"></property>
|
||||||
|
<property name="bg"></property>
|
||||||
|
<property name="caption"></property>
|
||||||
|
<property name="caption_visible">1</property>
|
||||||
|
<property name="center_pane">0</property>
|
||||||
|
<property name="close_button">1</property>
|
||||||
|
<property name="context_help">Enter the minimum acceptable diameter for a standard via</property>
|
||||||
|
<property name="context_menu">1</property>
|
||||||
|
<property name="default_pane">0</property>
|
||||||
|
<property name="dock">Dock</property>
|
||||||
|
<property name="dock_fixed">0</property>
|
||||||
|
<property name="docking">Left</property>
|
||||||
|
<property name="enabled">1</property>
|
||||||
|
<property name="fg"></property>
|
||||||
|
<property name="floatable">1</property>
|
||||||
|
<property name="font"></property>
|
||||||
|
<property name="gripper">0</property>
|
||||||
|
<property name="hidden">0</property>
|
||||||
|
<property name="id">wxID_ANY</property>
|
||||||
|
<property name="label">unit</property>
|
||||||
|
<property name="max_size"></property>
|
||||||
|
<property name="maximize_button">0</property>
|
||||||
|
<property name="maximum_size"></property>
|
||||||
|
<property name="min_size"></property>
|
||||||
|
<property name="minimize_button">0</property>
|
||||||
|
<property name="minimum_size"></property>
|
||||||
|
<property name="moveable">1</property>
|
||||||
|
<property name="name">m_ViaMinUnit</property>
|
||||||
|
<property name="pane_border">1</property>
|
||||||
|
<property name="pane_position"></property>
|
||||||
|
<property name="pane_size"></property>
|
||||||
|
<property name="permission">protected</property>
|
||||||
|
<property name="pin_button">1</property>
|
||||||
|
<property name="pos"></property>
|
||||||
|
<property name="resize">Resizable</property>
|
||||||
|
<property name="show">1</property>
|
||||||
|
<property name="size"></property>
|
||||||
|
<property name="style"></property>
|
||||||
|
<property name="subclass"></property>
|
||||||
|
<property name="toolbar_pane">0</property>
|
||||||
|
<property name="tooltip"></property>
|
||||||
|
<property name="window_extra_style"></property>
|
||||||
|
<property name="window_name"></property>
|
||||||
|
<property name="window_style"></property>
|
||||||
|
<property name="wrap">-1</property>
|
||||||
|
<event name="OnChar"></event>
|
||||||
|
<event name="OnEnterWindow"></event>
|
||||||
|
<event name="OnEraseBackground"></event>
|
||||||
|
<event name="OnKeyDown"></event>
|
||||||
|
<event name="OnKeyUp"></event>
|
||||||
|
<event name="OnKillFocus"></event>
|
||||||
|
<event name="OnLeaveWindow"></event>
|
||||||
|
<event name="OnLeftDClick"></event>
|
||||||
|
<event name="OnLeftDown"></event>
|
||||||
|
<event name="OnLeftUp"></event>
|
||||||
|
<event name="OnMiddleDClick"></event>
|
||||||
|
<event name="OnMiddleDown"></event>
|
||||||
|
<event name="OnMiddleUp"></event>
|
||||||
|
<event name="OnMotion"></event>
|
||||||
|
<event name="OnMouseEvents"></event>
|
||||||
|
<event name="OnMouseWheel"></event>
|
||||||
|
<event name="OnPaint"></event>
|
||||||
|
<event name="OnRightDClick"></event>
|
||||||
|
<event name="OnRightDown"></event>
|
||||||
|
<event name="OnRightUp"></event>
|
||||||
|
<event name="OnSetFocus"></event>
|
||||||
|
<event name="OnSize"></event>
|
||||||
|
<event name="OnUpdateUI"></event>
|
||||||
|
</object>
|
||||||
|
</object>
|
||||||
<object class="sizeritem" expanded="1">
|
<object class="sizeritem" expanded="1">
|
||||||
<property name="border">5</property>
|
<property name="border">5</property>
|
||||||
<property name="flag">wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL</property>
|
<property name="flag">wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL</property>
|
||||||
|
@ -835,6 +1012,89 @@
|
||||||
<event name="OnUpdateUI"></event>
|
<event name="OnUpdateUI"></event>
|
||||||
</object>
|
</object>
|
||||||
</object>
|
</object>
|
||||||
|
<object class="sizeritem" expanded="1">
|
||||||
|
<property name="border">5</property>
|
||||||
|
<property name="flag">wxALL</property>
|
||||||
|
<property name="proportion">0</property>
|
||||||
|
<object class="wxStaticText" expanded="1">
|
||||||
|
<property name="BottomDockable">1</property>
|
||||||
|
<property name="LeftDockable">1</property>
|
||||||
|
<property name="RightDockable">1</property>
|
||||||
|
<property name="TopDockable">1</property>
|
||||||
|
<property name="aui_layer"></property>
|
||||||
|
<property name="aui_name"></property>
|
||||||
|
<property name="aui_position"></property>
|
||||||
|
<property name="aui_row"></property>
|
||||||
|
<property name="best_size"></property>
|
||||||
|
<property name="bg"></property>
|
||||||
|
<property name="caption"></property>
|
||||||
|
<property name="caption_visible">1</property>
|
||||||
|
<property name="center_pane">0</property>
|
||||||
|
<property name="close_button">1</property>
|
||||||
|
<property name="context_help"></property>
|
||||||
|
<property name="context_menu">1</property>
|
||||||
|
<property name="default_pane">0</property>
|
||||||
|
<property name="dock">Dock</property>
|
||||||
|
<property name="dock_fixed">0</property>
|
||||||
|
<property name="docking">Left</property>
|
||||||
|
<property name="enabled">1</property>
|
||||||
|
<property name="fg"></property>
|
||||||
|
<property name="floatable">1</property>
|
||||||
|
<property name="font"></property>
|
||||||
|
<property name="gripper">0</property>
|
||||||
|
<property name="hidden">0</property>
|
||||||
|
<property name="id">wxID_ANY</property>
|
||||||
|
<property name="label">unit</property>
|
||||||
|
<property name="max_size"></property>
|
||||||
|
<property name="maximize_button">0</property>
|
||||||
|
<property name="maximum_size"></property>
|
||||||
|
<property name="min_size"></property>
|
||||||
|
<property name="minimize_button">0</property>
|
||||||
|
<property name="minimum_size"></property>
|
||||||
|
<property name="moveable">1</property>
|
||||||
|
<property name="name">m_MicroViaMinUnit</property>
|
||||||
|
<property name="pane_border">1</property>
|
||||||
|
<property name="pane_position"></property>
|
||||||
|
<property name="pane_size"></property>
|
||||||
|
<property name="permission">protected</property>
|
||||||
|
<property name="pin_button">1</property>
|
||||||
|
<property name="pos"></property>
|
||||||
|
<property name="resize">Resizable</property>
|
||||||
|
<property name="show">1</property>
|
||||||
|
<property name="size"></property>
|
||||||
|
<property name="style"></property>
|
||||||
|
<property name="subclass"></property>
|
||||||
|
<property name="toolbar_pane">0</property>
|
||||||
|
<property name="tooltip">Enter the minimum acceptable diameter for a micro via</property>
|
||||||
|
<property name="window_extra_style"></property>
|
||||||
|
<property name="window_name"></property>
|
||||||
|
<property name="window_style"></property>
|
||||||
|
<property name="wrap">-1</property>
|
||||||
|
<event name="OnChar"></event>
|
||||||
|
<event name="OnEnterWindow"></event>
|
||||||
|
<event name="OnEraseBackground"></event>
|
||||||
|
<event name="OnKeyDown"></event>
|
||||||
|
<event name="OnKeyUp"></event>
|
||||||
|
<event name="OnKillFocus"></event>
|
||||||
|
<event name="OnLeaveWindow"></event>
|
||||||
|
<event name="OnLeftDClick"></event>
|
||||||
|
<event name="OnLeftDown"></event>
|
||||||
|
<event name="OnLeftUp"></event>
|
||||||
|
<event name="OnMiddleDClick"></event>
|
||||||
|
<event name="OnMiddleDown"></event>
|
||||||
|
<event name="OnMiddleUp"></event>
|
||||||
|
<event name="OnMotion"></event>
|
||||||
|
<event name="OnMouseEvents"></event>
|
||||||
|
<event name="OnMouseWheel"></event>
|
||||||
|
<event name="OnPaint"></event>
|
||||||
|
<event name="OnRightDClick"></event>
|
||||||
|
<event name="OnRightDown"></event>
|
||||||
|
<event name="OnRightUp"></event>
|
||||||
|
<event name="OnSetFocus"></event>
|
||||||
|
<event name="OnSize"></event>
|
||||||
|
<event name="OnUpdateUI"></event>
|
||||||
|
</object>
|
||||||
|
</object>
|
||||||
</object>
|
</object>
|
||||||
</object>
|
</object>
|
||||||
<object class="sizeritem" expanded="1">
|
<object class="sizeritem" expanded="1">
|
||||||
|
@ -847,6 +1107,7 @@
|
||||||
<property name="minimum_size"></property>
|
<property name="minimum_size"></property>
|
||||||
<property name="name">ReportFileSizer</property>
|
<property name="name">ReportFileSizer</property>
|
||||||
<property name="orient">wxHORIZONTAL</property>
|
<property name="orient">wxHORIZONTAL</property>
|
||||||
|
<property name="parent">1</property>
|
||||||
<property name="permission">none</property>
|
<property name="permission">none</property>
|
||||||
<event name="OnUpdateUI"></event>
|
<event name="OnUpdateUI"></event>
|
||||||
<object class="sizeritem" expanded="1">
|
<object class="sizeritem" expanded="1">
|
||||||
|
@ -1249,7 +1510,7 @@
|
||||||
<property name="max_size"></property>
|
<property name="max_size"></property>
|
||||||
<property name="maximize_button">0</property>
|
<property name="maximize_button">0</property>
|
||||||
<property name="maximum_size"></property>
|
<property name="maximum_size"></property>
|
||||||
<property name="maxlength"></property>
|
<property name="maxlength">0</property>
|
||||||
<property name="min_size"></property>
|
<property name="min_size"></property>
|
||||||
<property name="minimize_button">0</property>
|
<property name="minimize_button">0</property>
|
||||||
<property name="minimum_size">220,-1</property>
|
<property name="minimum_size">220,-1</property>
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// C++ code generated with wxFormBuilder (version Mar 9 2015)
|
// C++ code generated with wxFormBuilder (version Mar 28 2016)
|
||||||
// http://www.wxformbuilder.org/
|
// http://www.wxformbuilder.org/
|
||||||
//
|
//
|
||||||
// PLEASE DO "NOT" EDIT THIS FILE!
|
// PLEASE DO "NOT" EDIT THIS FILE!
|
||||||
|
@ -55,8 +55,11 @@ class DIALOG_DRC_CONTROL_BASE : public DIALOG_SHIM
|
||||||
protected:
|
protected:
|
||||||
wxStaticText* m_ClearanceTitle;
|
wxStaticText* m_ClearanceTitle;
|
||||||
wxStaticText* m_TrackMinWidthTitle;
|
wxStaticText* m_TrackMinWidthTitle;
|
||||||
|
wxStaticText* m_TrackMinWidthUnit;
|
||||||
wxStaticText* m_ViaMinTitle;
|
wxStaticText* m_ViaMinTitle;
|
||||||
|
wxStaticText* m_ViaMinUnit;
|
||||||
wxStaticText* m_MicroViaMinTitle;
|
wxStaticText* m_MicroViaMinTitle;
|
||||||
|
wxStaticText* m_MicroViaMinUnit;
|
||||||
wxButton* m_BrowseButton;
|
wxButton* m_BrowseButton;
|
||||||
wxStaticText* m_staticText6;
|
wxStaticText* m_staticText6;
|
||||||
wxTextCtrl* m_Messages;
|
wxTextCtrl* m_Messages;
|
||||||
|
@ -73,6 +76,7 @@ class DIALOG_DRC_CONTROL_BASE : public DIALOG_SHIM
|
||||||
wxButton* m_sdbSizer1Cancel;
|
wxButton* m_sdbSizer1Cancel;
|
||||||
|
|
||||||
// Virtual event handlers, overide them in your derived class
|
// Virtual event handlers, overide them in your derived class
|
||||||
|
virtual void OnActivateDlg( wxActivateEvent& event ) { event.Skip(); }
|
||||||
virtual void OnReportCheckBoxClicked( wxCommandEvent& event ) { event.Skip(); }
|
virtual void OnReportCheckBoxClicked( wxCommandEvent& event ) { event.Skip(); }
|
||||||
virtual void OnButtonBrowseRptFileClick( wxCommandEvent& event ) { event.Skip(); }
|
virtual void OnButtonBrowseRptFileClick( wxCommandEvent& event ) { event.Skip(); }
|
||||||
virtual void OnStartdrcClick( wxCommandEvent& event ) { event.Skip(); }
|
virtual void OnStartdrcClick( wxCommandEvent& event ) { event.Skip(); }
|
||||||
|
@ -100,7 +104,7 @@ class DIALOG_DRC_CONTROL_BASE : public DIALOG_SHIM
|
||||||
DRCLISTBOX* m_ClearanceListBox;
|
DRCLISTBOX* m_ClearanceListBox;
|
||||||
DRCLISTBOX* m_UnconnectedListBox;
|
DRCLISTBOX* m_UnconnectedListBox;
|
||||||
|
|
||||||
DIALOG_DRC_CONTROL_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("DRC Control"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
|
DIALOG_DRC_CONTROL_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("DRC Control"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 733,438 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
|
||||||
~DIALOG_DRC_CONTROL_BASE();
|
~DIALOG_DRC_CONTROL_BASE();
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
*
|
*
|
||||||
* Copyright (C) 2004-2015 Jean-Pierre Charras, jp.charras at wanadoo.fr
|
* Copyright (C) 2004-2015 Jean-Pierre Charras, jp.charras at wanadoo.fr
|
||||||
* Copyright (C) 2014 Dick Hollenbeck, dick@softplc.com
|
* Copyright (C) 2014 Dick Hollenbeck, dick@softplc.com
|
||||||
* Copyright (C) 2015 KiCad Developers, see change_log.txt for contributors.
|
* Copyright (C) 2016 KiCad Developers, see change_log.txt for contributors.
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
|
@ -55,44 +55,35 @@
|
||||||
|
|
||||||
void DRC::ShowDialog()
|
void DRC::ShowDialog()
|
||||||
{
|
{
|
||||||
if( !m_ui )
|
if( !m_drcDialog )
|
||||||
{
|
{
|
||||||
m_mainWindow->GetToolManager()->RunAction( COMMON_ACTIONS::selectionClear, true );
|
m_mainWindow->GetToolManager()->RunAction( COMMON_ACTIONS::selectionClear, true );
|
||||||
m_ui = new DIALOG_DRC_CONTROL( this, m_mainWindow );
|
m_drcDialog = new DIALOG_DRC_CONTROL( this, m_mainWindow );
|
||||||
updatePointers();
|
updatePointers();
|
||||||
|
|
||||||
// copy data retained in this DRC object into the m_ui DrcPanel:
|
m_drcDialog->m_CreateRptCtrl->SetValue( m_doCreateRptFile );
|
||||||
|
m_drcDialog->m_RptFilenameCtrl->SetValue( m_rptFilename );
|
||||||
PutValueInLocalUnits( *m_ui->m_SetTrackMinWidthCtrl,
|
|
||||||
m_pcb->GetDesignSettings().m_TrackMinWidth );
|
|
||||||
PutValueInLocalUnits( *m_ui->m_SetViaMinSizeCtrl,
|
|
||||||
m_pcb->GetDesignSettings().m_ViasMinSize );
|
|
||||||
PutValueInLocalUnits( *m_ui->m_SetMicroViakMinSizeCtrl,
|
|
||||||
m_pcb->GetDesignSettings().m_MicroViasMinSize );
|
|
||||||
|
|
||||||
m_ui->m_CreateRptCtrl->SetValue( m_doCreateRptFile );
|
|
||||||
m_ui->m_RptFilenameCtrl->SetValue( m_rptFilename );
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
updatePointers();
|
updatePointers();
|
||||||
|
|
||||||
m_ui->Show( true );
|
m_drcDialog->Show( true );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void DRC::DestroyDialog( int aReason )
|
void DRC::DestroyDialog( int aReason )
|
||||||
{
|
{
|
||||||
if( m_ui )
|
if( m_drcDialog )
|
||||||
{
|
{
|
||||||
if( aReason == wxID_OK )
|
if( aReason == wxID_OK )
|
||||||
{
|
{
|
||||||
// if user clicked OK, save his choices in this DRC object.
|
// if user clicked OK, save his choices in this DRC object.
|
||||||
m_doCreateRptFile = m_ui->m_CreateRptCtrl->GetValue();
|
m_doCreateRptFile = m_drcDialog->m_CreateRptCtrl->GetValue();
|
||||||
m_rptFilename = m_ui->m_RptFilenameCtrl->GetValue();
|
m_rptFilename = m_drcDialog->m_RptFilenameCtrl->GetValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
m_ui->Destroy();
|
m_drcDialog->Destroy();
|
||||||
m_ui = 0;
|
m_drcDialog = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -101,7 +92,7 @@ DRC::DRC( PCB_EDIT_FRAME* aPcbWindow )
|
||||||
{
|
{
|
||||||
m_mainWindow = aPcbWindow;
|
m_mainWindow = aPcbWindow;
|
||||||
m_pcb = aPcbWindow->GetBoard();
|
m_pcb = aPcbWindow->GetBoard();
|
||||||
m_ui = 0;
|
m_drcDialog = NULL;
|
||||||
|
|
||||||
// establish initial values for everything:
|
// establish initial values for everything:
|
||||||
m_doPad2PadTest = true; // enable pad to pad clearance tests
|
m_doPad2PadTest = true; // enable pad to pad clearance tests
|
||||||
|
@ -176,6 +167,10 @@ int DRC::Drc( ZONE_CONTAINER* aArea, int aCornerIndex )
|
||||||
|
|
||||||
void DRC::RunTests( wxTextCtrl* aMessages )
|
void DRC::RunTests( wxTextCtrl* aMessages )
|
||||||
{
|
{
|
||||||
|
// be sure m_pcb is the current board, not a old one
|
||||||
|
// ( the board can be reloaded )
|
||||||
|
m_pcb = m_mainWindow->GetBoard();
|
||||||
|
|
||||||
// Ensure ratsnest is up to date:
|
// Ensure ratsnest is up to date:
|
||||||
if( (m_pcb->m_Status_Pcb & LISTE_RATSNEST_ITEM_OK) == 0 )
|
if( (m_pcb->m_Status_Pcb & LISTE_RATSNEST_ITEM_OK) == 0 )
|
||||||
{
|
{
|
||||||
|
@ -199,7 +194,7 @@ void DRC::RunTests( wxTextCtrl* aMessages )
|
||||||
if( aMessages )
|
if( aMessages )
|
||||||
aMessages->AppendText( _( "Aborting\n" ) );
|
aMessages->AppendText( _( "Aborting\n" ) );
|
||||||
|
|
||||||
// update the m_ui listboxes
|
// update the m_drcDialog listboxes
|
||||||
updatePointers();
|
updatePointers();
|
||||||
|
|
||||||
return;
|
return;
|
||||||
|
@ -279,7 +274,7 @@ void DRC::RunTests( wxTextCtrl* aMessages )
|
||||||
|
|
||||||
testTexts();
|
testTexts();
|
||||||
|
|
||||||
// update the m_ui listboxes
|
// update the m_drcDialog listboxes
|
||||||
updatePointers();
|
updatePointers();
|
||||||
|
|
||||||
if( aMessages )
|
if( aMessages )
|
||||||
|
@ -295,7 +290,7 @@ void DRC::ListUnconnectedPads()
|
||||||
{
|
{
|
||||||
testUnconnected();
|
testUnconnected();
|
||||||
|
|
||||||
// update the m_ui listboxes
|
// update the m_drcDialog listboxes
|
||||||
updatePointers();
|
updatePointers();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -305,10 +300,10 @@ void DRC::updatePointers()
|
||||||
// update my pointers, m_mainWindow is the only unchangeable one
|
// update my pointers, m_mainWindow is the only unchangeable one
|
||||||
m_pcb = m_mainWindow->GetBoard();
|
m_pcb = m_mainWindow->GetBoard();
|
||||||
|
|
||||||
if( m_ui ) // Use diag list boxes only in DRC dialog
|
if( m_drcDialog ) // Use diag list boxes only in DRC dialog
|
||||||
{
|
{
|
||||||
m_ui->m_ClearanceListBox->SetList( new DRC_LIST_MARKERS( m_pcb ) );
|
m_drcDialog->m_ClearanceListBox->SetList( new DRC_LIST_MARKERS( m_pcb ) );
|
||||||
m_ui->m_UnconnectedListBox->SetList( new DRC_LIST_UNCONNECTED( &m_unconnected ) );
|
m_drcDialog->m_UnconnectedListBox->SetList( new DRC_LIST_UNCONNECTED( &m_unconnected ) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -195,7 +195,7 @@ private:
|
||||||
|
|
||||||
PCB_EDIT_FRAME* m_mainWindow;
|
PCB_EDIT_FRAME* m_mainWindow;
|
||||||
BOARD* m_pcb;
|
BOARD* m_pcb;
|
||||||
DIALOG_DRC_CONTROL* m_ui;
|
DIALOG_DRC_CONTROL* m_drcDialog;
|
||||||
|
|
||||||
DRC_LIST m_unconnected; ///< list of unconnected pads, as DRC_ITEMs
|
DRC_LIST m_unconnected; ///< list of unconnected pads, as DRC_ITEMs
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue