More platform-standard presentation of DRC dialog.
Also makes better use of space to significantly increase number of markers shown. Fixes: lp:1748676 * https://bugs.launchpad.net/kicad/+bug/1748676 (cherry picked from commit a1d8097)
This commit is contained in:
parent
6ad37972c0
commit
a1ef5401f4
|
@ -72,20 +72,18 @@ public:
|
||||||
{
|
{
|
||||||
wxString htmlpage;
|
wxString htmlpage;
|
||||||
wxColour bgcolor = wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW );
|
wxColour bgcolor = wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW );
|
||||||
wxColour lncolor = wxSystemSettings::GetColour( wxSYS_COLOUR_HOTLIGHT );
|
|
||||||
wxColour fgcolor = wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT );
|
wxColour fgcolor = wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT );
|
||||||
// for each marker, build a link like:
|
// for each marker, build a link like:
|
||||||
// <A HREF="marker_index">text to click</A>
|
// <A HREF="marker_index">text to click</A>
|
||||||
// The "text to click" is the error name (first line of the full error text).
|
// The "text to click" is the error name (first line of the full error text).
|
||||||
wxString marker_text;
|
wxString marker_text;
|
||||||
|
wxString href;
|
||||||
|
|
||||||
for( unsigned ii = 0; ii < m_MarkerListReferences.size(); ii++ )
|
for( unsigned ii = 0; ii < m_MarkerListReferences.size(); ii++ )
|
||||||
{
|
{
|
||||||
marker_text.Printf( wxT( "<font color='%s'><a href='%d'>%s</font>" ),
|
href.Printf( wxT( "href='%d'" ), ii );
|
||||||
lncolor.GetAsString( wxC2S_HTML_SYNTAX ),
|
marker_text = m_MarkerListReferences[ii]->GetReporter().ShowHtml();
|
||||||
ii,
|
marker_text.Replace( wxT( "href=''"), href );
|
||||||
m_MarkerListReferences[ii]->GetReporter().ShowHtml() );
|
|
||||||
marker_text.Replace( wxT( "<ul>" ), wxT( "</a><ul>" ), false );
|
|
||||||
htmlpage += marker_text;
|
htmlpage += marker_text;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -75,3 +75,80 @@ wxString DRC_ITEM::ShowCoord( const wxPoint& aPos )
|
||||||
ret << aPos;
|
ret << aPos;
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
wxString DRC_ITEM::ShowHtml() const
|
||||||
|
{
|
||||||
|
wxString ret;
|
||||||
|
wxString mainText = m_MainText;
|
||||||
|
// a wxHtmlWindows does not like < and > in the text to display
|
||||||
|
// because these chars have a special meaning in html
|
||||||
|
mainText.Replace( wxT("<"), wxT("<") );
|
||||||
|
mainText.Replace( wxT(">"), wxT(">") );
|
||||||
|
|
||||||
|
wxString errText = GetErrorText();
|
||||||
|
errText.Replace( wxT("<"), wxT("<") );
|
||||||
|
errText.Replace( wxT(">"), wxT(">") );
|
||||||
|
|
||||||
|
wxColour hrefColour = wxSystemSettings::GetColour( wxSYS_COLOUR_HOTLIGHT );
|
||||||
|
|
||||||
|
if( m_noCoordinate )
|
||||||
|
{
|
||||||
|
// omit the coordinate, a NETCLASS has no location
|
||||||
|
ret.Printf( _( "<p><b>%s</b><br> %s" ),
|
||||||
|
GetChars( errText ),
|
||||||
|
GetChars( mainText ) );
|
||||||
|
}
|
||||||
|
else if( m_hasSecondItem )
|
||||||
|
{
|
||||||
|
wxString auxText = m_AuxiliaryText;
|
||||||
|
auxText.Replace( wxT("<"), wxT("<") );
|
||||||
|
auxText.Replace( wxT(">"), wxT(">") );
|
||||||
|
|
||||||
|
// an html fragment for the entire message in the listbox. feel free
|
||||||
|
// to add color if you want:
|
||||||
|
ret.Printf( _( "<p><b>%s</b><br> <font color='%s'><a href=''>%s</a></font>: %s<br> %s: %s" ),
|
||||||
|
GetChars( errText ),
|
||||||
|
hrefColour.GetAsString( wxC2S_HTML_SYNTAX ),
|
||||||
|
GetChars( ShowCoord( m_MainPosition )),
|
||||||
|
GetChars( mainText ),
|
||||||
|
GetChars( ShowCoord( m_AuxiliaryPosition )),
|
||||||
|
GetChars( auxText ) );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ret.Printf( _( "<p><b>%s</b><br> <font color='%s'><a href=''>%s</a></font>: %s" ),
|
||||||
|
GetChars( errText ),
|
||||||
|
hrefColour.GetAsString( wxC2S_HTML_SYNTAX ),
|
||||||
|
GetChars( ShowCoord( m_MainPosition ) ),
|
||||||
|
GetChars( mainText ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
wxString DRC_ITEM::ShowReport() const
|
||||||
|
{
|
||||||
|
wxString ret;
|
||||||
|
|
||||||
|
if( m_hasSecondItem )
|
||||||
|
{
|
||||||
|
ret.Printf( wxT( "ErrType(%d): %s\n %s: %s\n %s: %s\n" ),
|
||||||
|
m_ErrorCode,
|
||||||
|
GetChars( GetErrorText() ),
|
||||||
|
GetChars( ShowCoord( m_MainPosition ) ), GetChars( m_MainText ),
|
||||||
|
GetChars( ShowCoord( m_AuxiliaryPosition ) ), GetChars( m_AuxiliaryText ) );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ret.Printf( wxT( "ErrType(%d): %s\n %s: %s\n" ),
|
||||||
|
m_ErrorCode,
|
||||||
|
GetChars( GetErrorText() ),
|
||||||
|
GetChars( ShowCoord( m_MainPosition ) ), GetChars( m_MainText ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -170,53 +170,7 @@ public:
|
||||||
* wxWidget's wxHtmlListBox class.
|
* wxWidget's wxHtmlListBox class.
|
||||||
* @return wxString - the html text.
|
* @return wxString - the html text.
|
||||||
*/
|
*/
|
||||||
wxString ShowHtml() const
|
wxString ShowHtml() const;
|
||||||
{
|
|
||||||
wxString ret;
|
|
||||||
wxString mainText = m_MainText;
|
|
||||||
// a wxHtmlWindows does not like < and > in the text to display
|
|
||||||
// because these chars have a special meaning in html
|
|
||||||
mainText.Replace( wxT("<"), wxT("<") );
|
|
||||||
mainText.Replace( wxT(">"), wxT(">") );
|
|
||||||
|
|
||||||
wxString errText = GetErrorText();
|
|
||||||
errText.Replace( wxT("<"), wxT("<") );
|
|
||||||
errText.Replace( wxT(">"), wxT(">") );
|
|
||||||
|
|
||||||
|
|
||||||
if( m_noCoordinate )
|
|
||||||
{
|
|
||||||
// omit the coordinate, a NETCLASS has no location
|
|
||||||
ret.Printf( _( "ErrType(%d): <b>%s</b><ul><li> %s </li></ul>" ),
|
|
||||||
m_ErrorCode,
|
|
||||||
GetChars( errText ),
|
|
||||||
GetChars( mainText ) );
|
|
||||||
}
|
|
||||||
else if( m_hasSecondItem )
|
|
||||||
{
|
|
||||||
wxString auxText = m_AuxiliaryText;
|
|
||||||
auxText.Replace( wxT("<"), wxT("<") );
|
|
||||||
auxText.Replace( wxT(">"), wxT(">") );
|
|
||||||
|
|
||||||
// an html fragment for the entire message in the listbox. feel free
|
|
||||||
// to add color if you want:
|
|
||||||
ret.Printf( _( "ErrType(%d): <b>%s</b><ul><li> %s: %s </li><li> %s: %s </li></ul>" ),
|
|
||||||
m_ErrorCode,
|
|
||||||
GetChars( errText ),
|
|
||||||
GetChars( ShowCoord( m_MainPosition )), GetChars( mainText ),
|
|
||||||
GetChars( ShowCoord( m_AuxiliaryPosition )), GetChars( auxText ) );
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
ret.Printf( _( "ErrType(%d): <b>%s</b><ul><li> %s: %s </li></ul>" ),
|
|
||||||
m_ErrorCode,
|
|
||||||
GetChars( errText ),
|
|
||||||
GetChars( ShowCoord( m_MainPosition ) ), GetChars( mainText ) );
|
|
||||||
}
|
|
||||||
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Function ShowReport
|
* Function ShowReport
|
||||||
|
@ -224,29 +178,7 @@ public:
|
||||||
* to disk in a report.
|
* to disk in a report.
|
||||||
* @return wxString - the simple multi-line report text.
|
* @return wxString - the simple multi-line report text.
|
||||||
*/
|
*/
|
||||||
wxString ShowReport() const
|
wxString ShowReport() const;
|
||||||
{
|
|
||||||
wxString ret;
|
|
||||||
|
|
||||||
if( m_hasSecondItem )
|
|
||||||
{
|
|
||||||
ret.Printf( wxT( "ErrType(%d): %s\n %s: %s\n %s: %s\n" ),
|
|
||||||
m_ErrorCode,
|
|
||||||
GetChars( GetErrorText() ),
|
|
||||||
GetChars( ShowCoord( m_MainPosition ) ), GetChars( m_MainText ),
|
|
||||||
GetChars( ShowCoord( m_AuxiliaryPosition ) ), GetChars( m_AuxiliaryText ) );
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
ret.Printf( wxT( "ErrType(%d): %s\n %s: %s\n" ),
|
|
||||||
m_ErrorCode,
|
|
||||||
GetChars( GetErrorText() ),
|
|
||||||
GetChars( ShowCoord( m_MainPosition ) ), GetChars( m_MainText ) );
|
|
||||||
}
|
|
||||||
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Function GetErrorCode
|
* Function GetErrorCode
|
||||||
|
|
|
@ -31,6 +31,7 @@
|
||||||
#include <kiface_i.h>
|
#include <kiface_i.h>
|
||||||
#include <confirm.h>
|
#include <confirm.h>
|
||||||
#include <wildcards_and_files_ext.h>
|
#include <wildcards_and_files_ext.h>
|
||||||
|
#include <bitmaps.h>
|
||||||
#include <pgm_base.h>
|
#include <pgm_base.h>
|
||||||
#include <dialog_drc.h>
|
#include <dialog_drc.h>
|
||||||
#include <pcb_edit_frame.h>
|
#include <pcb_edit_frame.h>
|
||||||
|
@ -95,33 +96,55 @@ DIALOG_DRC_CONTROL::DIALOG_DRC_CONTROL( DRC* aTester, PCB_EDIT_FRAME* aEditorFra
|
||||||
m_currentBoard = m_brdEditor->GetBoard();
|
m_currentBoard = m_brdEditor->GetBoard();
|
||||||
m_BrdSettings = m_brdEditor->GetBoard()->GetDesignSettings();
|
m_BrdSettings = m_brdEditor->GetBoard()->GetDesignSettings();
|
||||||
|
|
||||||
|
wxFont messagesLabelFont = wxSystemSettings::GetFont( wxSYS_DEFAULT_GUI_FONT );
|
||||||
|
messagesLabelFont.SetSymbolicSize( wxFONTSIZE_SMALL );
|
||||||
|
m_messagesLabel->SetFont( messagesLabelFont );
|
||||||
|
|
||||||
|
m_BrowseButton->SetBitmap( KiBitmap( folder_xpm ) );
|
||||||
|
|
||||||
|
// We use a sdbSizer here to get the order right, which is platform-dependent
|
||||||
|
m_sdbSizer1OK->SetLabel( _( "Run DRC" ) );
|
||||||
|
m_sdbSizer1Apply->SetLabel( _( "List Unconnected" ) );
|
||||||
|
m_sdbSizer1Cancel->SetLabel( _( "Close" ) );
|
||||||
|
m_sizerButtons->Layout();
|
||||||
|
|
||||||
|
m_sdbSizer1OK->SetDefault();
|
||||||
|
|
||||||
InitValues();
|
InitValues();
|
||||||
|
|
||||||
|
// Connect events
|
||||||
|
m_ClearanceListBox->Connect( ID_CLEARANCE_LIST, wxEVT_LEFT_DCLICK,
|
||||||
|
wxMouseEventHandler( DIALOG_DRC_CONTROL::OnLeftDClickClearance ), NULL, this );
|
||||||
|
m_ClearanceListBox->Connect( ID_CLEARANCE_LIST, wxEVT_RIGHT_UP,
|
||||||
|
wxMouseEventHandler( DIALOG_DRC_CONTROL::OnRightUpClearance ), NULL, this );
|
||||||
|
m_UnconnectedListBox->Connect( ID_UNCONNECTED_LIST, wxEVT_LEFT_DCLICK,
|
||||||
|
wxMouseEventHandler( DIALOG_DRC_CONTROL::OnLeftDClickUnconnected ), NULL, this );
|
||||||
|
m_UnconnectedListBox->Connect( ID_UNCONNECTED_LIST, wxEVT_RIGHT_UP,
|
||||||
|
wxMouseEventHandler( DIALOG_DRC_CONTROL::OnRightUpUnconnected ), NULL, this );
|
||||||
|
|
||||||
// Now all widgets have the size fixed, call FinishDialogSettings
|
// Now all widgets have the size fixed, call FinishDialogSettings
|
||||||
FinishDialogSettings();
|
FinishDialogSettings();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
DIALOG_DRC_CONTROL::~DIALOG_DRC_CONTROL()
|
DIALOG_DRC_CONTROL::~DIALOG_DRC_CONTROL()
|
||||||
{
|
{
|
||||||
m_config->Write( TestMissingCourtyardKey, m_cbCourtyardMissing->GetValue() );
|
m_config->Write( TestMissingCourtyardKey, m_cbCourtyardMissing->GetValue() );
|
||||||
m_config->Write( TestFootprintCourtyardKey, m_cbCourtyardOverlap->GetValue() );
|
m_config->Write( TestFootprintCourtyardKey, m_cbCourtyardOverlap->GetValue() );
|
||||||
m_config->Write( RefillZonesBeforeDrc, m_cbRefillZones->GetValue() );
|
m_config->Write( RefillZonesBeforeDrc, m_cbRefillZones->GetValue() );
|
||||||
|
|
||||||
// Disonnect events
|
// Disconnect events
|
||||||
m_ClearanceListBox->Disconnect( ID_CLEARANCE_LIST, wxEVT_LEFT_DCLICK,
|
m_ClearanceListBox->Disconnect( ID_CLEARANCE_LIST, wxEVT_LEFT_DCLICK,
|
||||||
wxMouseEventHandler(
|
wxMouseEventHandler( DIALOG_DRC_CONTROL::OnLeftDClickClearance ), NULL, this );
|
||||||
DIALOG_DRC_CONTROL::OnLeftDClickClearance ), NULL, this );
|
|
||||||
m_ClearanceListBox->Disconnect( ID_CLEARANCE_LIST, wxEVT_RIGHT_UP,
|
m_ClearanceListBox->Disconnect( ID_CLEARANCE_LIST, wxEVT_RIGHT_UP,
|
||||||
wxMouseEventHandler(
|
wxMouseEventHandler( DIALOG_DRC_CONTROL::OnRightUpClearance ), NULL, this );
|
||||||
DIALOG_DRC_CONTROL::OnRightUpClearance ), NULL, this );
|
|
||||||
m_UnconnectedListBox->Disconnect( ID_UNCONNECTED_LIST, wxEVT_LEFT_DCLICK,
|
m_UnconnectedListBox->Disconnect( ID_UNCONNECTED_LIST, wxEVT_LEFT_DCLICK,
|
||||||
wxMouseEventHandler( DIALOG_DRC_CONTROL::
|
wxMouseEventHandler( DIALOG_DRC_CONTROL::OnLeftDClickUnconnected ), NULL, this );
|
||||||
OnLeftDClickUnconnected ), NULL, this );
|
|
||||||
m_UnconnectedListBox->Disconnect( ID_UNCONNECTED_LIST, wxEVT_RIGHT_UP,
|
m_UnconnectedListBox->Disconnect( ID_UNCONNECTED_LIST, wxEVT_RIGHT_UP,
|
||||||
wxMouseEventHandler(
|
wxMouseEventHandler( DIALOG_DRC_CONTROL::OnRightUpUnconnected ), NULL, this );
|
||||||
DIALOG_DRC_CONTROL::OnRightUpUnconnected ), NULL, this );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void DIALOG_DRC_CONTROL::OnActivateDlg( wxActivateEvent& event )
|
void DIALOG_DRC_CONTROL::OnActivateDlg( wxActivateEvent& event )
|
||||||
{
|
{
|
||||||
if( m_currentBoard != m_brdEditor->GetBoard() )
|
if( m_currentBoard != m_brdEditor->GetBoard() )
|
||||||
|
@ -157,19 +180,8 @@ void DIALOG_DRC_CONTROL::DisplayDRCValues()
|
||||||
|
|
||||||
void DIALOG_DRC_CONTROL::InitValues()
|
void DIALOG_DRC_CONTROL::InitValues()
|
||||||
{
|
{
|
||||||
// Connect events and objects
|
m_markersTitleTemplate = m_Notebook->GetPageText( 0 );
|
||||||
m_ClearanceListBox->Connect( ID_CLEARANCE_LIST, wxEVT_LEFT_DCLICK,
|
m_unconnectedTitleTemplate = m_Notebook->GetPageText( 1 );
|
||||||
wxMouseEventHandler(
|
|
||||||
DIALOG_DRC_CONTROL::OnLeftDClickClearance ), NULL, this );
|
|
||||||
m_ClearanceListBox->Connect( ID_CLEARANCE_LIST, wxEVT_RIGHT_UP,
|
|
||||||
wxMouseEventHandler(
|
|
||||||
DIALOG_DRC_CONTROL::OnRightUpClearance ), NULL, this );
|
|
||||||
m_UnconnectedListBox->Connect( ID_UNCONNECTED_LIST, wxEVT_LEFT_DCLICK,
|
|
||||||
wxMouseEventHandler( DIALOG_DRC_CONTROL::
|
|
||||||
OnLeftDClickUnconnected ), NULL, this );
|
|
||||||
m_UnconnectedListBox->Connect( ID_UNCONNECTED_LIST, wxEVT_RIGHT_UP,
|
|
||||||
wxMouseEventHandler(
|
|
||||||
DIALOG_DRC_CONTROL::OnRightUpUnconnected ), NULL, this );
|
|
||||||
|
|
||||||
m_DeleteCurrentMarkerButton->Enable( false );
|
m_DeleteCurrentMarkerButton->Enable( false );
|
||||||
|
|
||||||
|
@ -184,8 +196,6 @@ void DIALOG_DRC_CONTROL::InitValues()
|
||||||
m_config->Read( RefillZonesBeforeDrc, &value, false );
|
m_config->Read( RefillZonesBeforeDrc, &value, false );
|
||||||
m_cbRefillZones->SetValue( value );
|
m_cbRefillZones->SetValue( value );
|
||||||
|
|
||||||
m_BrowseButton->SetBitmap( KiBitmap( folder_xpm ) );
|
|
||||||
|
|
||||||
Layout(); // adding the units above expanded Clearance text, now resize.
|
Layout(); // adding the units above expanded Clearance text, now resize.
|
||||||
|
|
||||||
SetFocus();
|
SetFocus();
|
||||||
|
@ -205,10 +215,8 @@ void DIALOG_DRC_CONTROL::SetDrcParmeters( )
|
||||||
|
|
||||||
void DIALOG_DRC_CONTROL::SetRptSettings( bool aEnable, const wxString& aFileName )
|
void DIALOG_DRC_CONTROL::SetRptSettings( bool aEnable, const wxString& aFileName )
|
||||||
{
|
{
|
||||||
m_RptFilenameCtrl->Enable( aEnable );
|
|
||||||
m_BrowseButton->Enable( aEnable );
|
|
||||||
m_CreateRptCtrl->SetValue( aEnable );
|
|
||||||
m_RptFilenameCtrl->SetValue( aFileName );
|
m_RptFilenameCtrl->SetValue( aFileName );
|
||||||
|
m_CreateRptCtrl->SetValue( aEnable );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -221,7 +229,7 @@ void DIALOG_DRC_CONTROL::GetRptSettings( bool* aEnable, wxString& aFileName )
|
||||||
|
|
||||||
void DIALOG_DRC_CONTROL::OnStartdrcClick( wxCommandEvent& event )
|
void DIALOG_DRC_CONTROL::OnStartdrcClick( wxCommandEvent& event )
|
||||||
{
|
{
|
||||||
wxString reportName;
|
wxString reportName, msg;
|
||||||
|
|
||||||
bool make_report = m_CreateRptCtrl->IsChecked();
|
bool make_report = m_CreateRptCtrl->IsChecked();
|
||||||
|
|
||||||
|
@ -257,27 +265,25 @@ 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 Messages
|
||||||
m_brdEditor->GetBoard()->m_Status_Pcb = 0; // Force full connectivity and ratsnest recalculations
|
m_brdEditor->GetBoard()->m_Status_Pcb = 0; // Force full connectivity and ratsnest calculations
|
||||||
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 "Problems/Markers" tab
|
||||||
|
|
||||||
|
|
||||||
// Generate the report
|
// Generate the report
|
||||||
if( !reportName.IsEmpty() )
|
if( !reportName.IsEmpty() )
|
||||||
{
|
{
|
||||||
if( writeReport( reportName ) )
|
if( writeReport( reportName ) )
|
||||||
{
|
{
|
||||||
wxString msg;
|
|
||||||
msg.Printf( _( "Report file \"%s\" created" ), GetChars( reportName ) );
|
msg.Printf( _( "Report file \"%s\" created" ), GetChars( reportName ) );
|
||||||
|
wxMessageDialog popupWindow( this, msg, _( "Disk File Report Completed" ) );
|
||||||
wxString caption( _( "Disk File Report Completed" ) );
|
|
||||||
wxMessageDialog popupWindow( this, msg, caption );
|
|
||||||
popupWindow.ShowModal();
|
popupWindow.ShowModal();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
DisplayError( this, wxString::Format( _( "Unable to create report file \"%s\""),
|
{
|
||||||
GetChars( reportName ) ) );
|
msg.Printf( _( "Unable to create report file \"%s\"" ), GetChars( reportName ) );
|
||||||
|
DisplayError( this, msg );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
wxEndBusyCursor();
|
wxEndBusyCursor();
|
||||||
|
@ -296,7 +302,7 @@ void DIALOG_DRC_CONTROL::OnDeleteAllClick( wxCommandEvent& event )
|
||||||
|
|
||||||
void DIALOG_DRC_CONTROL::OnListUnconnectedClick( wxCommandEvent& event )
|
void DIALOG_DRC_CONTROL::OnListUnconnectedClick( wxCommandEvent& event )
|
||||||
{
|
{
|
||||||
wxString reportName;
|
wxString reportName, msg;
|
||||||
|
|
||||||
bool make_report = m_CreateRptCtrl->IsChecked();
|
bool make_report = m_CreateRptCtrl->IsChecked();
|
||||||
|
|
||||||
|
@ -333,22 +339,22 @@ void DIALOG_DRC_CONTROL::OnListUnconnectedClick( wxCommandEvent& event )
|
||||||
m_Messages->Clear();
|
m_Messages->Clear();
|
||||||
m_tester->ListUnconnectedPads();
|
m_tester->ListUnconnectedPads();
|
||||||
|
|
||||||
m_Notebook->ChangeSelection( 1 ); // display the 2nd tab "Unconnected..."
|
m_Notebook->ChangeSelection( 1 ); // display the "Unconnected" tab
|
||||||
|
|
||||||
// Generate the report
|
// Generate the report
|
||||||
if( !reportName.IsEmpty() )
|
if( !reportName.IsEmpty() )
|
||||||
{
|
{
|
||||||
if( writeReport( reportName ) )
|
if( writeReport( reportName ) )
|
||||||
{
|
{
|
||||||
wxString msg;
|
|
||||||
msg.Printf( _( "Report file \"%s\" created" ), GetChars( reportName ) );
|
msg.Printf( _( "Report file \"%s\" created" ), GetChars( reportName ) );
|
||||||
wxString caption( _( "Disk File Report Completed" ) );
|
wxMessageDialog popupWindow( this, msg, _( "Disk File Report Completed" ) );
|
||||||
wxMessageDialog popupWindow( this, msg, caption );
|
|
||||||
popupWindow.ShowModal();
|
popupWindow.ShowModal();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
DisplayError( this, wxString::Format( _( "Unable to create report file \"%s\""),
|
{
|
||||||
GetChars( reportName ) ) );
|
msg.Printf( _( "Unable to create report file \"%s\"" ), GetChars( reportName ) );
|
||||||
|
DisplayError( this, msg );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
UpdateDisplayedCounts();
|
UpdateDisplayedCounts();
|
||||||
|
@ -361,37 +367,27 @@ void DIALOG_DRC_CONTROL::OnListUnconnectedClick( wxCommandEvent& event )
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void DIALOG_DRC_CONTROL::OnButtonBrowseRptFileClick( wxCommandEvent& event )
|
void DIALOG_DRC_CONTROL::OnButtonBrowseRptFileClick( wxCommandEvent& )
|
||||||
{
|
{
|
||||||
wxFileName fn = m_brdEditor->GetBoard()->GetFileName();
|
wxFileName fn = m_brdEditor->GetBoard()->GetFileName();
|
||||||
fn.SetExt( ReportFileExtension );
|
fn.SetExt( ReportFileExtension );
|
||||||
wxString prj_path = Prj().GetProjectPath();
|
wxString prj_path = Prj().GetProjectPath();
|
||||||
|
|
||||||
wxFileDialog dlg( this, _( "Save DRC Report File" ), prj_path,
|
wxFileDialog dlg( this, _( "Save DRC Report File" ), prj_path, fn.GetFullName(),
|
||||||
fn.GetFullName(), ReportFileWildcard(),
|
ReportFileWildcard(), wxFD_SAVE | wxFD_OVERWRITE_PROMPT );
|
||||||
wxFD_SAVE | wxFD_OVERWRITE_PROMPT );
|
|
||||||
|
|
||||||
if( dlg.ShowModal() == wxID_CANCEL )
|
if( dlg.ShowModal() == wxID_CANCEL )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
m_CreateRptCtrl->SetValue( true );
|
||||||
m_RptFilenameCtrl->SetValue( dlg.GetPath() );
|
m_RptFilenameCtrl->SetValue( dlg.GetPath() );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void DIALOG_DRC_CONTROL::OnOkClick( wxCommandEvent& event )
|
|
||||||
{
|
|
||||||
SetReturnCode( wxID_OK );
|
|
||||||
SetDrcParmeters();
|
|
||||||
|
|
||||||
// The dialog can be modal or not modal.
|
|
||||||
// Leave the DRC caller destroy (or not) the dialog
|
|
||||||
m_tester->DestroyDRCDialog( wxID_OK );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void DIALOG_DRC_CONTROL::OnCancelClick( wxCommandEvent& event )
|
void DIALOG_DRC_CONTROL::OnCancelClick( wxCommandEvent& event )
|
||||||
{
|
{
|
||||||
SetReturnCode( wxID_CANCEL );
|
SetReturnCode( wxID_CANCEL );
|
||||||
|
SetDrcParmeters();
|
||||||
|
|
||||||
// The dialog can be modal or not modal.
|
// The dialog can be modal or not modal.
|
||||||
// Leave the DRC caller destroy (or not) the dialog
|
// Leave the DRC caller destroy (or not) the dialog
|
||||||
|
@ -401,8 +397,14 @@ void DIALOG_DRC_CONTROL::OnCancelClick( wxCommandEvent& event )
|
||||||
|
|
||||||
void DIALOG_DRC_CONTROL::OnReportCheckBoxClicked( wxCommandEvent& event )
|
void DIALOG_DRC_CONTROL::OnReportCheckBoxClicked( wxCommandEvent& event )
|
||||||
{
|
{
|
||||||
m_RptFilenameCtrl->Enable( m_CreateRptCtrl->IsChecked() );
|
if( m_CreateRptCtrl->IsChecked() )
|
||||||
m_BrowseButton->Enable( m_CreateRptCtrl->IsChecked() );
|
m_RptFilenameCtrl->SetFocus();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void DIALOG_DRC_CONTROL::OnReportFilenameEdited( wxCommandEvent &event )
|
||||||
|
{
|
||||||
|
m_CreateRptCtrl->SetValue( event.GetString().Length() );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -410,8 +412,6 @@ void DIALOG_DRC_CONTROL::OnLeftDClickClearance( wxMouseEvent& event )
|
||||||
{
|
{
|
||||||
event.Skip();
|
event.Skip();
|
||||||
|
|
||||||
// I am assuming that the double click actually changed the selected item.
|
|
||||||
// please verify this.
|
|
||||||
int selection = m_ClearanceListBox->GetSelection();
|
int selection = m_ClearanceListBox->GetSelection();
|
||||||
|
|
||||||
if( selection != wxNOT_FOUND )
|
if( selection != wxNOT_FOUND )
|
||||||
|
@ -438,8 +438,8 @@ void DIALOG_DRC_CONTROL::OnLeftDClickClearance( wxMouseEvent& event )
|
||||||
// no destruction so we can preserve listbox cursor
|
// no destruction so we can preserve listbox cursor
|
||||||
Show( false );
|
Show( false );
|
||||||
|
|
||||||
// We do not want the clarification popup window.
|
// We do not want the clarify selection popup when releasing the
|
||||||
// when releasing the left button in the main window
|
// left button in the main window
|
||||||
m_brdEditor->SkipNextLeftButtonReleaseEvent();
|
m_brdEditor->SkipNextLeftButtonReleaseEvent();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -489,14 +489,11 @@ void DIALOG_DRC_CONTROL::OnLeftDClickUnconnected( wxMouseEvent& event )
|
||||||
{
|
{
|
||||||
event.Skip();
|
event.Skip();
|
||||||
|
|
||||||
// I am assuming that the double click actually changed the selected item.
|
|
||||||
// please verify this.
|
|
||||||
int selection = m_UnconnectedListBox->GetSelection();
|
int selection = m_UnconnectedListBox->GetSelection();
|
||||||
|
|
||||||
if( selection != wxNOT_FOUND )
|
if( selection != wxNOT_FOUND )
|
||||||
{
|
{
|
||||||
// Find the selected DRC_ITEM in the listbox, position cursor there,
|
// Find the selected DRC_ITEM in the listbox, position cursor there.
|
||||||
// at the first of the two pads.
|
|
||||||
// Then hide the dialog.
|
// Then hide the dialog.
|
||||||
const DRC_ITEM* item = m_UnconnectedListBox->GetItem( selection );
|
const DRC_ITEM* item = m_UnconnectedListBox->GetItem( selection );
|
||||||
if( item )
|
if( item )
|
||||||
|
@ -510,8 +507,8 @@ void DIALOG_DRC_CONTROL::OnLeftDClickUnconnected( wxMouseEvent& event )
|
||||||
{
|
{
|
||||||
Show( false );
|
Show( false );
|
||||||
|
|
||||||
// We do not want the clarification popup window.
|
// We do not want the clarify selection popup when releasing the
|
||||||
// when releasing the left button in the main window
|
// left button in the main window
|
||||||
m_brdEditor->SkipNextLeftButtonReleaseEvent();
|
m_brdEditor->SkipNextLeftButtonReleaseEvent();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -542,8 +539,7 @@ void DIALOG_DRC_CONTROL::OnMarkerSelectionEvent( wxCommandEvent& event )
|
||||||
// until a MARKER is selected, this button is not enabled.
|
// until a MARKER is selected, this button is not enabled.
|
||||||
m_DeleteCurrentMarkerButton->Enable( true );
|
m_DeleteCurrentMarkerButton->Enable( true );
|
||||||
|
|
||||||
// Find the selected DRC_ITEM in the listbox, position cursor there,
|
// Find the selected DRC_ITEM in the listbox, position cursor there.
|
||||||
// at the first of the two pads.
|
|
||||||
const DRC_ITEM* item = m_ClearanceListBox->GetItem( selection );
|
const DRC_ITEM* item = m_ClearanceListBox->GetItem( selection );
|
||||||
if( item )
|
if( item )
|
||||||
{
|
{
|
||||||
|
@ -573,8 +569,7 @@ void DIALOG_DRC_CONTROL::OnUnconnectedSelectionEvent( wxCommandEvent& event )
|
||||||
// until a MARKER is selected, this button is not enabled.
|
// until a MARKER is selected, this button is not enabled.
|
||||||
m_DeleteCurrentMarkerButton->Enable( true );
|
m_DeleteCurrentMarkerButton->Enable( true );
|
||||||
|
|
||||||
// Find the selected DRC_ITEM in the listbox, position cursor there,
|
// Find the selected DRC_ITEM in the listbox, position cursor there.
|
||||||
// at the first of the two pads.
|
|
||||||
const DRC_ITEM* item = m_UnconnectedListBox->GetItem( selection );
|
const DRC_ITEM* item = m_UnconnectedListBox->GetItem( selection );
|
||||||
|
|
||||||
if( item )
|
if( item )
|
||||||
|
@ -712,6 +707,7 @@ void DIALOG_DRC_CONTROL::UpdateDisplayedCounts()
|
||||||
int marker_count = m_ClearanceListBox->GetItemCount();
|
int marker_count = m_ClearanceListBox->GetItemCount();
|
||||||
int unconnected_count = m_UnconnectedListBox->GetItemCount();
|
int unconnected_count = m_UnconnectedListBox->GetItemCount();
|
||||||
|
|
||||||
m_MarkerCount->SetLabelText( wxString::Format( "%d", marker_count ) );
|
m_Notebook->SetPageText( 0, wxString::Format( m_markersTitleTemplate, marker_count ) );
|
||||||
m_UnconnectedCount->SetLabelText( wxString::Format( "%d", unconnected_count ) );
|
m_Notebook->SetPageText( 1, wxString::Format( m_unconnectedTitleTemplate, unconnected_count ) );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -93,9 +93,12 @@ private:
|
||||||
|
|
||||||
void SetDrcParmeters( );
|
void SetDrcParmeters( );
|
||||||
|
|
||||||
/// wxEVT_COMMAND_CHECKBOX_CLICKED event handler for ID_CHECKBOX
|
/// wxEVT_COMMAND_CHECKBOX_CLICKED event handler for ID_CHECKBOX_RPT_FILE
|
||||||
void OnReportCheckBoxClicked( wxCommandEvent& event ) override;
|
void OnReportCheckBoxClicked( wxCommandEvent& event ) override;
|
||||||
|
|
||||||
|
/// wxEVT_COMMAND_TEXT_UPDATED event handler for m_RptFilenameCtrl
|
||||||
|
void OnReportFilenameEdited( wxCommandEvent &event ) override;
|
||||||
|
|
||||||
/// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_BUTTON_BROWSE_RPT_FILE
|
/// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_BUTTON_BROWSE_RPT_FILE
|
||||||
void OnButtonBrowseRptFileClick( wxCommandEvent& event ) override;
|
void OnButtonBrowseRptFileClick( wxCommandEvent& event ) override;
|
||||||
|
|
||||||
|
@ -126,9 +129,6 @@ private:
|
||||||
/// wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CANCEL
|
/// wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CANCEL
|
||||||
void OnCancelClick( wxCommandEvent& event ) override;
|
void OnCancelClick( wxCommandEvent& event ) override;
|
||||||
|
|
||||||
/// wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_OK
|
|
||||||
void OnOkClick( wxCommandEvent& event ) override;
|
|
||||||
|
|
||||||
/// handler for activate event, updating data which can be modified outside the dialog
|
/// handler for activate event, updating data which can be modified outside the dialog
|
||||||
/// (DRC parameters)
|
/// (DRC parameters)
|
||||||
void OnActivateDlg( wxActivateEvent& event ) override;
|
void OnActivateDlg( wxActivateEvent& event ) override;
|
||||||
|
@ -148,6 +148,8 @@ private:
|
||||||
DRC* m_tester;
|
DRC* m_tester;
|
||||||
PCB_EDIT_FRAME* m_brdEditor;
|
PCB_EDIT_FRAME* m_brdEditor;
|
||||||
wxConfigBase* m_config;
|
wxConfigBase* m_config;
|
||||||
|
wxString m_markersTitleTemplate;
|
||||||
|
wxString m_unconnectedTitleTemplate;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // _DIALOG_DRC_H_
|
#endif // _DIALOG_DRC_H_
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// C++ code generated with wxFormBuilder (version Apr 19 2018)
|
// C++ code generated with wxFormBuilder (version Dec 30 2017)
|
||||||
// http://www.wxformbuilder.org/
|
// http://www.wxformbuilder.org/
|
||||||
//
|
//
|
||||||
// PLEASE DO *NOT* EDIT THIS FILE!
|
// PLEASE DO *NOT* EDIT THIS FILE!
|
||||||
|
@ -18,27 +18,14 @@ DIALOG_DRC_CONTROL_BASE::DIALOG_DRC_CONTROL_BASE( wxWindow* parent, wxWindowID i
|
||||||
wxBoxSizer* m_MainSizer;
|
wxBoxSizer* m_MainSizer;
|
||||||
m_MainSizer = new wxBoxSizer( wxVERTICAL );
|
m_MainSizer = new wxBoxSizer( wxVERTICAL );
|
||||||
|
|
||||||
wxBoxSizer* m_CommandSizer;
|
wxGridBagSizer* gbSizer1;
|
||||||
m_CommandSizer = new wxBoxSizer( wxHORIZONTAL );
|
gbSizer1 = new wxGridBagSizer( 0, 10 );
|
||||||
|
gbSizer1->SetFlexibleDirection( wxBOTH );
|
||||||
|
gbSizer1->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
|
||||||
|
|
||||||
wxBoxSizer* bSizerOptions;
|
wxBoxSizer* bSizerOptions;
|
||||||
bSizerOptions = new wxBoxSizer( wxVERTICAL );
|
bSizerOptions = new wxBoxSizer( wxVERTICAL );
|
||||||
|
|
||||||
m_staticTextOptions = new wxStaticText( this, wxID_ANY, _("Options:"), wxDefaultPosition, wxDefaultSize, 0 );
|
|
||||||
m_staticTextOptions->Wrap( -1 );
|
|
||||||
m_staticTextOptions->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
|
|
||||||
|
|
||||||
bSizerOptions->Add( m_staticTextOptions, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
|
||||||
|
|
||||||
wxBoxSizer* bSizerOptsSettings;
|
|
||||||
bSizerOptsSettings = new wxBoxSizer( wxHORIZONTAL );
|
|
||||||
|
|
||||||
|
|
||||||
bSizerOptsSettings->Add( 20, 20, 0, 0, 5 );
|
|
||||||
|
|
||||||
wxBoxSizer* bSizerOptSettings;
|
|
||||||
bSizerOptSettings = new wxBoxSizer( wxVERTICAL );
|
|
||||||
|
|
||||||
wxFlexGridSizer* fgMinValuesSizer;
|
wxFlexGridSizer* fgMinValuesSizer;
|
||||||
fgMinValuesSizer = new wxFlexGridSizer( 4, 3, 0, 0 );
|
fgMinValuesSizer = new wxFlexGridSizer( 4, 3, 0, 0 );
|
||||||
fgMinValuesSizer->AddGrowableCol( 1 );
|
fgMinValuesSizer->AddGrowableCol( 1 );
|
||||||
|
@ -47,12 +34,12 @@ DIALOG_DRC_CONTROL_BASE::DIALOG_DRC_CONTROL_BASE( wxWindow* parent, wxWindowID i
|
||||||
|
|
||||||
m_ClearanceTitle = new wxStaticText( this, wxID_ANY, _("Clearance:"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_ClearanceTitle = new wxStaticText( this, wxID_ANY, _("Clearance:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_ClearanceTitle->Wrap( -1 );
|
m_ClearanceTitle->Wrap( -1 );
|
||||||
fgMinValuesSizer->Add( m_ClearanceTitle, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxLEFT, 5 );
|
fgMinValuesSizer->Add( m_ClearanceTitle, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
|
||||||
|
|
||||||
m_SetClearance = new wxTextCtrl( this, wxID_ANY, _("By Netclass"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_SetClearance = new wxTextCtrl( this, wxID_ANY, _("by Netclass"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_SetClearance->Enable( false );
|
m_SetClearance->Enable( false );
|
||||||
|
|
||||||
fgMinValuesSizer->Add( m_SetClearance, 0, wxEXPAND|wxALL, 5 );
|
fgMinValuesSizer->Add( m_SetClearance, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 3 );
|
||||||
|
|
||||||
|
|
||||||
fgMinValuesSizer->Add( 0, 0, 0, 0, 5 );
|
fgMinValuesSizer->Add( 0, 0, 0, 0, 5 );
|
||||||
|
@ -64,7 +51,7 @@ DIALOG_DRC_CONTROL_BASE::DIALOG_DRC_CONTROL_BASE( wxWindow* parent, wxWindowID i
|
||||||
fgMinValuesSizer->Add( m_TrackMinWidthTitle, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxLEFT, 5 );
|
fgMinValuesSizer->Add( m_TrackMinWidthTitle, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_SetTrackMinWidthCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_SetTrackMinWidthCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
fgMinValuesSizer->Add( m_SetTrackMinWidthCtrl, 0, wxEXPAND|wxALL, 5 );
|
fgMinValuesSizer->Add( m_SetTrackMinWidthCtrl, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 3 );
|
||||||
|
|
||||||
m_TrackMinWidthUnit = new wxStaticText( this, wxID_ANY, _("unit"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_TrackMinWidthUnit = new wxStaticText( this, wxID_ANY, _("unit"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_TrackMinWidthUnit->Wrap( -1 );
|
m_TrackMinWidthUnit->Wrap( -1 );
|
||||||
|
@ -76,10 +63,10 @@ DIALOG_DRC_CONTROL_BASE::DIALOG_DRC_CONTROL_BASE( wxWindow* parent, wxWindowID i
|
||||||
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|wxLEFT, 5 );
|
fgMinValuesSizer->Add( m_ViaMinTitle, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
|
||||||
|
|
||||||
m_SetViaMinSizeCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_SetViaMinSizeCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
fgMinValuesSizer->Add( m_SetViaMinSizeCtrl, 0, wxALL|wxEXPAND, 5 );
|
fgMinValuesSizer->Add( m_SetViaMinSizeCtrl, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 3 );
|
||||||
|
|
||||||
m_ViaMinUnit = new wxStaticText( this, wxID_ANY, _("unit"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_ViaMinUnit = new wxStaticText( this, wxID_ANY, _("unit"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_ViaMinUnit->Wrap( -1 );
|
m_ViaMinUnit->Wrap( -1 );
|
||||||
|
@ -91,10 +78,10 @@ DIALOG_DRC_CONTROL_BASE::DIALOG_DRC_CONTROL_BASE( wxWindow* parent, wxWindowID i
|
||||||
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|wxLEFT, 5 );
|
fgMinValuesSizer->Add( m_MicroViaMinTitle, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
|
||||||
|
|
||||||
m_SetMicroViakMinSizeCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_SetMicroViakMinSizeCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
fgMinValuesSizer->Add( m_SetMicroViakMinSizeCtrl, 0, wxALL|wxEXPAND, 5 );
|
fgMinValuesSizer->Add( m_SetMicroViakMinSizeCtrl, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 3 );
|
||||||
|
|
||||||
m_MicroViaMinUnit = new wxStaticText( this, wxID_ANY, _("unit"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_MicroViaMinUnit = new wxStaticText( this, wxID_ANY, _("unit"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_MicroViaMinUnit->Wrap( -1 );
|
m_MicroViaMinUnit->Wrap( -1 );
|
||||||
|
@ -103,42 +90,45 @@ DIALOG_DRC_CONTROL_BASE::DIALOG_DRC_CONTROL_BASE( wxWindow* parent, wxWindowID i
|
||||||
fgMinValuesSizer->Add( m_MicroViaMinUnit, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
|
fgMinValuesSizer->Add( m_MicroViaMinUnit, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
|
||||||
|
|
||||||
|
|
||||||
bSizerOptSettings->Add( fgMinValuesSizer, 0, wxEXPAND, 5 );
|
bSizerOptions->Add( fgMinValuesSizer, 0, wxEXPAND|wxTOP|wxBOTTOM, 5 );
|
||||||
|
|
||||||
|
wxBoxSizer* bSizerOptSettings;
|
||||||
|
bSizerOptSettings = new wxBoxSizer( wxVERTICAL );
|
||||||
|
|
||||||
m_cbRefillZones = new wxCheckBox( this, wxID_ANY, _("Refill all zones before performing DRC"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_cbRefillZones = new wxCheckBox( this, wxID_ANY, _("Refill all zones before performing DRC"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
bSizerOptSettings->Add( m_cbRefillZones, 0, wxLEFT|wxRIGHT, 5 );
|
bSizerOptSettings->Add( m_cbRefillZones, 0, wxALL, 5 );
|
||||||
|
|
||||||
m_cbReportAllTrackErrors = new wxCheckBox( this, wxID_ANY, _("Report all errors for tracks (slower)"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_cbReportAllTrackErrors = new wxCheckBox( this, wxID_ANY, _("Report all errors for tracks (slower)"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_cbReportAllTrackErrors->SetToolTip( _("If selected, all DRC violations for tracks will be reported. This can be slow for complicated designs.\n\nIf unselected, only the first DRC violation will be reported for each track connection.") );
|
m_cbReportAllTrackErrors->SetToolTip( _("If selected, all DRC violations for tracks will be reported. This can be slow for complicated designs.\n\nIf unselected, only the first DRC violation will be reported for each track connection.") );
|
||||||
|
|
||||||
bSizerOptSettings->Add( m_cbReportAllTrackErrors, 0, wxRIGHT|wxLEFT, 5 );
|
bSizerOptSettings->Add( m_cbReportAllTrackErrors, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_cbCourtyardOverlap = new wxCheckBox( this, wxID_ANY, _("Check footprint courtyard overlap"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_cbCourtyardOverlap = new wxCheckBox( this, wxID_ANY, _("Check footprint courtyard overlap"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
bSizerOptSettings->Add( m_cbCourtyardOverlap, 0, wxLEFT|wxRIGHT, 5 );
|
bSizerOptSettings->Add( m_cbCourtyardOverlap, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_cbCourtyardMissing = new wxCheckBox( this, wxID_ANY, _("Check courtyard missing in footprints"), wxDefaultPosition, wxDefaultSize, 0 );
|
m_cbCourtyardMissing = new wxCheckBox( this, wxID_ANY, _("Check courtyard missing in footprints"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
bSizerOptSettings->Add( m_cbCourtyardMissing, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
|
bSizerOptSettings->Add( m_cbCourtyardMissing, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
|
|
||||||
bSizerOptsSettings->Add( bSizerOptSettings, 1, wxEXPAND, 5 );
|
bSizerOptions->Add( bSizerOptSettings, 1, wxEXPAND, 5 );
|
||||||
|
|
||||||
|
|
||||||
bSizerOptions->Add( bSizerOptsSettings, 1, wxEXPAND, 5 );
|
gbSizer1->Add( bSizerOptions, wxGBPosition( 0, 0 ), wxGBSpan( 1, 1 ), wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
|
wxBoxSizer* bSizerMessages;
|
||||||
|
bSizerMessages = new wxBoxSizer( wxVERTICAL );
|
||||||
|
|
||||||
|
m_messagesLabel = new wxStaticText( this, wxID_ANY, _("Messages"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
|
m_messagesLabel->Wrap( -1 );
|
||||||
|
bSizerMessages->Add( m_messagesLabel, 0, wxLEFT|wxRIGHT|wxTOP, 5 );
|
||||||
|
|
||||||
|
m_Messages = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxTE_MULTILINE|wxTE_READONLY );
|
||||||
|
m_Messages->SetMinSize( wxSize( 280,-1 ) );
|
||||||
|
|
||||||
|
bSizerMessages->Add( m_Messages, 1, wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT|wxTOP, 2 );
|
||||||
|
|
||||||
|
|
||||||
bSizerOptions->Add( 10, 5, 0, 0, 5 );
|
gbSizer1->Add( bSizerMessages, wxGBPosition( 0, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_staticTextRpt = new wxStaticText( this, wxID_ANY, _("Create Report File:"), wxDefaultPosition, wxDefaultSize, 0 );
|
|
||||||
m_staticTextRpt->Wrap( -1 );
|
|
||||||
m_staticTextRpt->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
|
|
||||||
|
|
||||||
bSizerOptions->Add( m_staticTextRpt, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
|
||||||
|
|
||||||
wxBoxSizer* bSizerRpt;
|
|
||||||
bSizerRpt = new wxBoxSizer( wxHORIZONTAL );
|
|
||||||
|
|
||||||
|
|
||||||
bSizerRpt->Add( 20, 20, 0, 0, 5 );
|
|
||||||
|
|
||||||
wxFlexGridSizer* fgSizerRpt;
|
wxFlexGridSizer* fgSizerRpt;
|
||||||
fgSizerRpt = new wxFlexGridSizer( 0, 3, 0, 0 );
|
fgSizerRpt = new wxFlexGridSizer( 0, 3, 0, 0 );
|
||||||
|
@ -146,118 +136,49 @@ DIALOG_DRC_CONTROL_BASE::DIALOG_DRC_CONTROL_BASE( wxWindow* parent, wxWindowID i
|
||||||
fgSizerRpt->SetFlexibleDirection( wxBOTH );
|
fgSizerRpt->SetFlexibleDirection( wxBOTH );
|
||||||
fgSizerRpt->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
|
fgSizerRpt->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
|
||||||
|
|
||||||
m_CreateRptCtrl = new wxCheckBox( this, ID_CHECKBOX_RPT_FILE, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_CreateRptCtrl = new wxCheckBox( this, ID_CHECKBOX_RPT_FILE, _("Create report file:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
m_CreateRptCtrl->SetToolTip( _("Enable writing report to this file") );
|
m_CreateRptCtrl->SetToolTip( _("Enable writing report to this file") );
|
||||||
|
|
||||||
fgSizerRpt->Add( m_CreateRptCtrl, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
|
fgSizerRpt->Add( m_CreateRptCtrl, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 10 );
|
||||||
|
|
||||||
m_RptFilenameCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
m_RptFilenameCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 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 ) );
|
||||||
|
|
||||||
fgSizerRpt->Add( m_RptFilenameCtrl, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxALL, 5 );
|
fgSizerRpt->Add( m_RptFilenameCtrl, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxTOP|wxBOTTOM, 3 );
|
||||||
|
|
||||||
m_BrowseButton = new wxButton( this, ID_BUTTON_BROWSE_RPT_FILE, _("..."), wxDefaultPosition, wxSize( 50,-1 ), 0 );
|
m_BrowseButton = new wxBitmapButton( this, ID_BUTTON_BROWSE_RPT_FILE, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW );
|
||||||
fgSizerRpt->Add( m_BrowseButton, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
|
m_BrowseButton->SetMinSize( wxSize( 30,28 ) );
|
||||||
|
|
||||||
|
fgSizerRpt->Add( m_BrowseButton, 0, wxALIGN_CENTER_VERTICAL, 2 );
|
||||||
|
|
||||||
|
|
||||||
bSizerRpt->Add( fgSizerRpt, 1, 0, 5 );
|
gbSizer1->Add( fgSizerRpt, wxGBPosition( 1, 0 ), wxGBSpan( 1, 3 ), wxEXPAND|wxTOP|wxRIGHT, 7 );
|
||||||
|
|
||||||
|
|
||||||
bSizerOptions->Add( bSizerRpt, 0, wxEXPAND, 5 );
|
gbSizer1->AddGrowableCol( 0 );
|
||||||
|
gbSizer1->AddGrowableCol( 1 );
|
||||||
|
|
||||||
|
m_MainSizer->Add( gbSizer1, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
m_CommandSizer->Add( bSizerOptions, 1, wxEXPAND, 5 );
|
m_Notebook = new wxNotebook( this, ID_NOTEBOOK1, wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
|
m_Notebook->SetMinSize( wxSize( 640,280 ) );
|
||||||
|
|
||||||
wxBoxSizer* bSizerMessages;
|
|
||||||
bSizerMessages = new wxBoxSizer( wxVERTICAL );
|
|
||||||
|
|
||||||
m_staticText6 = new wxStaticText( this, wxID_ANY, _("Messages:"), wxDefaultPosition, wxDefaultSize, 0 );
|
|
||||||
m_staticText6->Wrap( -1 );
|
|
||||||
bSizerMessages->Add( m_staticText6, 0, wxRIGHT|wxLEFT, 5 );
|
|
||||||
|
|
||||||
m_Messages = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxTE_MULTILINE|wxTE_READONLY );
|
|
||||||
m_Messages->SetMinSize( wxSize( 220,-1 ) );
|
|
||||||
|
|
||||||
bSizerMessages->Add( m_Messages, 1, wxEXPAND|wxRIGHT|wxLEFT, 5 );
|
|
||||||
|
|
||||||
|
|
||||||
m_CommandSizer->Add( bSizerMessages, 1, wxEXPAND, 5 );
|
|
||||||
|
|
||||||
wxBoxSizer* bSizer11;
|
|
||||||
bSizer11 = new wxBoxSizer( wxVERTICAL );
|
|
||||||
|
|
||||||
m_buttonRunDRC = new wxButton( this, ID_STARTDRC, _("Start DRC"), wxDefaultPosition, wxDefaultSize, 0 );
|
|
||||||
m_buttonRunDRC->SetDefault();
|
|
||||||
m_buttonRunDRC->SetToolTip( _("Start the Design Rule Checker") );
|
|
||||||
|
|
||||||
bSizer11->Add( m_buttonRunDRC, 0, wxALL|wxEXPAND, 5 );
|
|
||||||
|
|
||||||
m_buttonListUnconnected = new wxButton( this, ID_LIST_UNCONNECTED, _("List Unconnected"), wxDefaultPosition, wxDefaultSize, 0 );
|
|
||||||
m_buttonListUnconnected->SetToolTip( _("List unconnected pads or tracks") );
|
|
||||||
|
|
||||||
bSizer11->Add( m_buttonListUnconnected, 0, wxALL|wxEXPAND, 5 );
|
|
||||||
|
|
||||||
m_DeleteAllButton = new wxButton( this, ID_DELETE_ALL, _("Delete All Markers"), wxDefaultPosition, wxDefaultSize, 0 );
|
|
||||||
m_DeleteAllButton->SetToolTip( _("Delete every marker") );
|
|
||||||
|
|
||||||
bSizer11->Add( m_DeleteAllButton, 0, wxALL|wxEXPAND, 5 );
|
|
||||||
|
|
||||||
m_DeleteCurrentMarkerButton = new wxButton( this, wxID_ANY, _("Delete Current Marker"), wxDefaultPosition, wxDefaultSize, 0 );
|
|
||||||
m_DeleteCurrentMarkerButton->SetToolTip( _("Delete the marker selected in the list box below") );
|
|
||||||
|
|
||||||
bSizer11->Add( m_DeleteCurrentMarkerButton, 0, wxEXPAND|wxALL, 5 );
|
|
||||||
|
|
||||||
|
|
||||||
m_CommandSizer->Add( bSizer11, 0, wxALIGN_CENTER_VERTICAL, 5 );
|
|
||||||
|
|
||||||
|
|
||||||
m_MainSizer->Add( m_CommandSizer, 0, wxALL|wxEXPAND, 5 );
|
|
||||||
|
|
||||||
wxStaticBoxSizer* m_ErrorMsgs;
|
|
||||||
m_ErrorMsgs = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Error Messages:") ), wxVERTICAL );
|
|
||||||
|
|
||||||
wxBoxSizer* bSizer8;
|
|
||||||
bSizer8 = new wxBoxSizer( wxHORIZONTAL );
|
|
||||||
|
|
||||||
m_MarkerCountLabel = new wxStaticText( m_ErrorMsgs->GetStaticBox(), wxID_ANY, _("Marker count:"), wxDefaultPosition, wxDefaultSize, 0 );
|
|
||||||
m_MarkerCountLabel->Wrap( -1 );
|
|
||||||
bSizer8->Add( m_MarkerCountLabel, 0, wxALL, 5 );
|
|
||||||
|
|
||||||
m_MarkerCount = new wxStaticText( m_ErrorMsgs->GetStaticBox(), wxID_ANY, _("0"), wxDefaultPosition, wxDefaultSize, 0 );
|
|
||||||
m_MarkerCount->Wrap( -1 );
|
|
||||||
bSizer8->Add( m_MarkerCount, 1, wxALL, 5 );
|
|
||||||
|
|
||||||
m_staticline1 = new wxStaticLine( m_ErrorMsgs->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
|
|
||||||
bSizer8->Add( m_staticline1, 0, wxEXPAND | wxALL, 5 );
|
|
||||||
|
|
||||||
m_UnconnectedCountLabel = new wxStaticText( m_ErrorMsgs->GetStaticBox(), wxID_ANY, _("Unconnected count:"), wxDefaultPosition, wxDefaultSize, 0 );
|
|
||||||
m_UnconnectedCountLabel->Wrap( -1 );
|
|
||||||
bSizer8->Add( m_UnconnectedCountLabel, 0, wxALL, 5 );
|
|
||||||
|
|
||||||
m_UnconnectedCount = new wxStaticText( m_ErrorMsgs->GetStaticBox(), wxID_ANY, _("0"), wxDefaultPosition, wxDefaultSize, 0 );
|
|
||||||
m_UnconnectedCount->Wrap( -1 );
|
|
||||||
bSizer8->Add( m_UnconnectedCount, 1, wxALL, 5 );
|
|
||||||
|
|
||||||
|
|
||||||
m_ErrorMsgs->Add( bSizer8, 0, wxEXPAND, 5 );
|
|
||||||
|
|
||||||
m_Notebook = new wxNotebook( m_ErrorMsgs->GetStaticBox(), ID_NOTEBOOK1, wxDefaultPosition, wxDefaultSize, 0 );
|
|
||||||
m_panelClearanceListBox = new wxPanel( m_Notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
|
m_panelClearanceListBox = new wxPanel( m_Notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
|
||||||
wxBoxSizer* bSizeClearanceBox;
|
wxBoxSizer* bSizeClearanceBox;
|
||||||
bSizeClearanceBox = new wxBoxSizer( wxVERTICAL );
|
bSizeClearanceBox = new wxBoxSizer( wxVERTICAL );
|
||||||
|
|
||||||
m_ClearanceListBox = new DRCLISTBOX( m_panelClearanceListBox, ID_CLEARANCE_LIST, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
|
m_ClearanceListBox = new DRCLISTBOX( m_panelClearanceListBox, ID_CLEARANCE_LIST, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
|
||||||
|
m_ClearanceListBox->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
|
||||||
m_ClearanceListBox->SetToolTip( _("MARKERs, double click any to go there in PCB, right click for popup menu") );
|
m_ClearanceListBox->SetToolTip( _("MARKERs, double click any to go there in PCB, right click for popup menu") );
|
||||||
m_ClearanceListBox->SetMinSize( wxSize( -1,80 ) );
|
|
||||||
|
|
||||||
bSizeClearanceBox->Add( m_ClearanceListBox, 1, wxALL|wxEXPAND, 5 );
|
bSizeClearanceBox->Add( m_ClearanceListBox, 1, wxEXPAND|wxALL, 5 );
|
||||||
|
|
||||||
|
|
||||||
m_panelClearanceListBox->SetSizer( bSizeClearanceBox );
|
m_panelClearanceListBox->SetSizer( bSizeClearanceBox );
|
||||||
m_panelClearanceListBox->Layout();
|
m_panelClearanceListBox->Layout();
|
||||||
bSizeClearanceBox->Fit( m_panelClearanceListBox );
|
bSizeClearanceBox->Fit( m_panelClearanceListBox );
|
||||||
m_Notebook->AddPage( m_panelClearanceListBox, _("Problems / Markers"), true );
|
m_Notebook->AddPage( m_panelClearanceListBox, _("Problems / Markers (%d)"), true );
|
||||||
m_panelUnconnectedBox = new wxPanel( m_Notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
|
m_panelUnconnectedBox = new wxPanel( m_Notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
|
||||||
wxBoxSizer* bSizerUnconnectedBox;
|
wxBoxSizer* bSizerUnconnectedBox;
|
||||||
bSizerUnconnectedBox = new wxBoxSizer( wxVERTICAL );
|
bSizerUnconnectedBox = new wxBoxSizer( wxVERTICAL );
|
||||||
|
@ -271,21 +192,31 @@ DIALOG_DRC_CONTROL_BASE::DIALOG_DRC_CONTROL_BASE( wxWindow* parent, wxWindowID i
|
||||||
m_panelUnconnectedBox->SetSizer( bSizerUnconnectedBox );
|
m_panelUnconnectedBox->SetSizer( bSizerUnconnectedBox );
|
||||||
m_panelUnconnectedBox->Layout();
|
m_panelUnconnectedBox->Layout();
|
||||||
bSizerUnconnectedBox->Fit( m_panelUnconnectedBox );
|
bSizerUnconnectedBox->Fit( m_panelUnconnectedBox );
|
||||||
m_Notebook->AddPage( m_panelUnconnectedBox, _("Unconnected"), false );
|
m_Notebook->AddPage( m_panelUnconnectedBox, _("Unconnected Items (%d)"), false );
|
||||||
|
|
||||||
m_ErrorMsgs->Add( m_Notebook, 1, wxEXPAND | wxALL, 5 );
|
m_MainSizer->Add( m_Notebook, 1, wxEXPAND|wxLEFT|wxRIGHT, 5 );
|
||||||
|
|
||||||
|
m_sizerButtons = new wxBoxSizer( wxHORIZONTAL );
|
||||||
|
|
||||||
m_MainSizer->Add( m_ErrorMsgs, 1, wxEXPAND, 5 );
|
m_DeleteCurrentMarkerButton = new wxButton( this, wxID_ANY, _("Delete Marker"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
|
m_sizerButtons->Add( m_DeleteCurrentMarkerButton, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 10 );
|
||||||
|
|
||||||
|
m_DeleteAllMarkersButton = new wxButton( this, wxID_ANY, _("Delete All Markers"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||||
|
m_sizerButtons->Add( m_DeleteAllMarkersButton, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
|
||||||
|
|
||||||
m_sdbSizer1 = new wxStdDialogButtonSizer();
|
m_sdbSizer1 = new wxStdDialogButtonSizer();
|
||||||
m_sdbSizer1OK = new wxButton( this, wxID_OK );
|
m_sdbSizer1OK = new wxButton( this, wxID_OK );
|
||||||
m_sdbSizer1->AddButton( m_sdbSizer1OK );
|
m_sdbSizer1->AddButton( m_sdbSizer1OK );
|
||||||
|
m_sdbSizer1Apply = new wxButton( this, wxID_APPLY );
|
||||||
|
m_sdbSizer1->AddButton( m_sdbSizer1Apply );
|
||||||
m_sdbSizer1Cancel = new wxButton( this, wxID_CANCEL );
|
m_sdbSizer1Cancel = new wxButton( this, wxID_CANCEL );
|
||||||
m_sdbSizer1->AddButton( m_sdbSizer1Cancel );
|
m_sdbSizer1->AddButton( m_sdbSizer1Cancel );
|
||||||
m_sdbSizer1->Realize();
|
m_sdbSizer1->Realize();
|
||||||
|
|
||||||
m_MainSizer->Add( m_sdbSizer1, 0, wxALL|wxEXPAND, 5 );
|
m_sizerButtons->Add( m_sdbSizer1, 1, wxEXPAND, 5 );
|
||||||
|
|
||||||
|
|
||||||
|
m_MainSizer->Add( m_sizerButtons, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
|
||||||
|
|
||||||
|
|
||||||
this->SetSizer( m_MainSizer );
|
this->SetSizer( m_MainSizer );
|
||||||
|
@ -295,11 +226,8 @@ DIALOG_DRC_CONTROL_BASE::DIALOG_DRC_CONTROL_BASE( wxWindow* parent, wxWindowID i
|
||||||
// Connect Events
|
// Connect Events
|
||||||
this->Connect( wxEVT_ACTIVATE, wxActivateEventHandler( DIALOG_DRC_CONTROL_BASE::OnActivateDlg ) );
|
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_RptFilenameCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnReportFilenameEdited ), 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_buttonListUnconnected->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnListUnconnectedClick ), NULL, this );
|
|
||||||
m_DeleteAllButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnDeleteAllClick ), NULL, this );
|
|
||||||
m_DeleteCurrentMarkerButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnDeleteOneClick ), NULL, this );
|
|
||||||
m_Notebook->Connect( wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, wxNotebookEventHandler( DIALOG_DRC_CONTROL_BASE::OnChangingMarkerList ), NULL, this );
|
m_Notebook->Connect( wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, wxNotebookEventHandler( DIALOG_DRC_CONTROL_BASE::OnChangingMarkerList ), NULL, this );
|
||||||
m_ClearanceListBox->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( DIALOG_DRC_CONTROL_BASE::OnLeftDClickClearance ), NULL, this );
|
m_ClearanceListBox->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( DIALOG_DRC_CONTROL_BASE::OnLeftDClickClearance ), NULL, this );
|
||||||
m_ClearanceListBox->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnMarkerSelectionEvent ), NULL, this );
|
m_ClearanceListBox->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnMarkerSelectionEvent ), NULL, this );
|
||||||
|
@ -307,8 +235,11 @@ DIALOG_DRC_CONTROL_BASE::DIALOG_DRC_CONTROL_BASE( wxWindow* parent, wxWindowID i
|
||||||
m_UnconnectedListBox->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( DIALOG_DRC_CONTROL_BASE::OnLeftDClickUnconnected ), NULL, this );
|
m_UnconnectedListBox->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( DIALOG_DRC_CONTROL_BASE::OnLeftDClickUnconnected ), NULL, this );
|
||||||
m_UnconnectedListBox->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnUnconnectedSelectionEvent ), NULL, this );
|
m_UnconnectedListBox->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnUnconnectedSelectionEvent ), NULL, this );
|
||||||
m_UnconnectedListBox->Connect( wxEVT_RIGHT_UP, wxMouseEventHandler( DIALOG_DRC_CONTROL_BASE::OnRightUpUnconnected ), NULL, this );
|
m_UnconnectedListBox->Connect( wxEVT_RIGHT_UP, wxMouseEventHandler( DIALOG_DRC_CONTROL_BASE::OnRightUpUnconnected ), NULL, this );
|
||||||
|
m_DeleteCurrentMarkerButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnDeleteOneClick ), NULL, this );
|
||||||
|
m_DeleteAllMarkersButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnDeleteAllClick ), NULL, this );
|
||||||
|
m_sdbSizer1Apply->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnListUnconnectedClick ), NULL, this );
|
||||||
m_sdbSizer1Cancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnCancelClick ), NULL, this );
|
m_sdbSizer1Cancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnCancelClick ), NULL, this );
|
||||||
m_sdbSizer1OK->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnOkClick ), NULL, this );
|
m_sdbSizer1OK->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnStartdrcClick ), NULL, this );
|
||||||
}
|
}
|
||||||
|
|
||||||
DIALOG_DRC_CONTROL_BASE::~DIALOG_DRC_CONTROL_BASE()
|
DIALOG_DRC_CONTROL_BASE::~DIALOG_DRC_CONTROL_BASE()
|
||||||
|
@ -316,11 +247,8 @@ DIALOG_DRC_CONTROL_BASE::~DIALOG_DRC_CONTROL_BASE()
|
||||||
// Disconnect Events
|
// Disconnect Events
|
||||||
this->Disconnect( wxEVT_ACTIVATE, wxActivateEventHandler( DIALOG_DRC_CONTROL_BASE::OnActivateDlg ) );
|
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_RptFilenameCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnReportFilenameEdited ), 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_buttonListUnconnected->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnListUnconnectedClick ), NULL, this );
|
|
||||||
m_DeleteAllButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnDeleteAllClick ), NULL, this );
|
|
||||||
m_DeleteCurrentMarkerButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnDeleteOneClick ), NULL, this );
|
|
||||||
m_Notebook->Disconnect( wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, wxNotebookEventHandler( DIALOG_DRC_CONTROL_BASE::OnChangingMarkerList ), NULL, this );
|
m_Notebook->Disconnect( wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, wxNotebookEventHandler( DIALOG_DRC_CONTROL_BASE::OnChangingMarkerList ), NULL, this );
|
||||||
m_ClearanceListBox->Disconnect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( DIALOG_DRC_CONTROL_BASE::OnLeftDClickClearance ), NULL, this );
|
m_ClearanceListBox->Disconnect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( DIALOG_DRC_CONTROL_BASE::OnLeftDClickClearance ), NULL, this );
|
||||||
m_ClearanceListBox->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnMarkerSelectionEvent ), NULL, this );
|
m_ClearanceListBox->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnMarkerSelectionEvent ), NULL, this );
|
||||||
|
@ -328,7 +256,10 @@ DIALOG_DRC_CONTROL_BASE::~DIALOG_DRC_CONTROL_BASE()
|
||||||
m_UnconnectedListBox->Disconnect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( DIALOG_DRC_CONTROL_BASE::OnLeftDClickUnconnected ), NULL, this );
|
m_UnconnectedListBox->Disconnect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( DIALOG_DRC_CONTROL_BASE::OnLeftDClickUnconnected ), NULL, this );
|
||||||
m_UnconnectedListBox->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnUnconnectedSelectionEvent ), NULL, this );
|
m_UnconnectedListBox->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnUnconnectedSelectionEvent ), NULL, this );
|
||||||
m_UnconnectedListBox->Disconnect( wxEVT_RIGHT_UP, wxMouseEventHandler( DIALOG_DRC_CONTROL_BASE::OnRightUpUnconnected ), NULL, this );
|
m_UnconnectedListBox->Disconnect( wxEVT_RIGHT_UP, wxMouseEventHandler( DIALOG_DRC_CONTROL_BASE::OnRightUpUnconnected ), NULL, this );
|
||||||
|
m_DeleteCurrentMarkerButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnDeleteOneClick ), NULL, this );
|
||||||
|
m_DeleteAllMarkersButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnDeleteAllClick ), NULL, this );
|
||||||
|
m_sdbSizer1Apply->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnListUnconnectedClick ), NULL, this );
|
||||||
m_sdbSizer1Cancel->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnCancelClick ), NULL, this );
|
m_sdbSizer1Cancel->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnCancelClick ), NULL, this );
|
||||||
m_sdbSizer1OK->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnOkClick ), NULL, this );
|
m_sdbSizer1OK->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DRC_CONTROL_BASE::OnStartdrcClick ), NULL, this );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,5 +1,5 @@
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// C++ code generated with wxFormBuilder (version Apr 19 2018)
|
// C++ code generated with wxFormBuilder (version Dec 30 2017)
|
||||||
// http://www.wxformbuilder.org/
|
// http://www.wxformbuilder.org/
|
||||||
//
|
//
|
||||||
// PLEASE DO *NOT* EDIT THIS FILE!
|
// PLEASE DO *NOT* EDIT THIS FILE!
|
||||||
|
@ -23,27 +23,24 @@ class DRCLISTBOX;
|
||||||
#include <wx/textctrl.h>
|
#include <wx/textctrl.h>
|
||||||
#include <wx/sizer.h>
|
#include <wx/sizer.h>
|
||||||
#include <wx/checkbox.h>
|
#include <wx/checkbox.h>
|
||||||
#include <wx/button.h>
|
|
||||||
#include <wx/statline.h>
|
|
||||||
#include <wx/listbox.h>
|
|
||||||
#include <wx/panel.h>
|
|
||||||
#include <wx/bitmap.h>
|
#include <wx/bitmap.h>
|
||||||
#include <wx/image.h>
|
#include <wx/image.h>
|
||||||
#include <wx/icon.h>
|
#include <wx/icon.h>
|
||||||
|
#include <wx/bmpbuttn.h>
|
||||||
|
#include <wx/button.h>
|
||||||
|
#include <wx/gbsizer.h>
|
||||||
|
#include <wx/listbox.h>
|
||||||
|
#include <wx/panel.h>
|
||||||
#include <wx/notebook.h>
|
#include <wx/notebook.h>
|
||||||
#include <wx/statbox.h>
|
|
||||||
#include <wx/dialog.h>
|
#include <wx/dialog.h>
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
#define ID_CHECKBOX_RPT_FILE 1000
|
#define ID_CHECKBOX_RPT_FILE 1000
|
||||||
#define ID_BUTTON_BROWSE_RPT_FILE 1001
|
#define ID_BUTTON_BROWSE_RPT_FILE 1001
|
||||||
#define ID_STARTDRC 1002
|
#define ID_NOTEBOOK1 1002
|
||||||
#define ID_LIST_UNCONNECTED 1003
|
#define ID_CLEARANCE_LIST 1003
|
||||||
#define ID_DELETE_ALL 1004
|
#define ID_UNCONNECTED_LIST 1004
|
||||||
#define ID_NOTEBOOK1 1005
|
|
||||||
#define ID_CLEARANCE_LIST 1006
|
|
||||||
#define ID_UNCONNECTED_LIST 1007
|
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
/// Class DIALOG_DRC_CONTROL_BASE
|
/// Class DIALOG_DRC_CONTROL_BASE
|
||||||
|
@ -54,7 +51,6 @@ class DIALOG_DRC_CONTROL_BASE : public DIALOG_SHIM
|
||||||
wxPanel* m_panelUnconnectedBox;
|
wxPanel* m_panelUnconnectedBox;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
wxStaticText* m_staticTextOptions;
|
|
||||||
wxStaticText* m_ClearanceTitle;
|
wxStaticText* m_ClearanceTitle;
|
||||||
wxStaticText* m_TrackMinWidthTitle;
|
wxStaticText* m_TrackMinWidthTitle;
|
||||||
wxStaticText* m_TrackMinWidthUnit;
|
wxStaticText* m_TrackMinWidthUnit;
|
||||||
|
@ -66,33 +62,26 @@ class DIALOG_DRC_CONTROL_BASE : public DIALOG_SHIM
|
||||||
wxCheckBox* m_cbReportAllTrackErrors;
|
wxCheckBox* m_cbReportAllTrackErrors;
|
||||||
wxCheckBox* m_cbCourtyardOverlap;
|
wxCheckBox* m_cbCourtyardOverlap;
|
||||||
wxCheckBox* m_cbCourtyardMissing;
|
wxCheckBox* m_cbCourtyardMissing;
|
||||||
wxStaticText* m_staticTextRpt;
|
wxStaticText* m_messagesLabel;
|
||||||
|
wxTextCtrl* m_Messages;
|
||||||
wxCheckBox* m_CreateRptCtrl;
|
wxCheckBox* m_CreateRptCtrl;
|
||||||
wxTextCtrl* m_RptFilenameCtrl;
|
wxTextCtrl* m_RptFilenameCtrl;
|
||||||
wxButton* m_BrowseButton;
|
wxBitmapButton* m_BrowseButton;
|
||||||
wxStaticText* m_staticText6;
|
|
||||||
wxTextCtrl* m_Messages;
|
|
||||||
wxButton* m_buttonRunDRC;
|
|
||||||
wxButton* m_buttonListUnconnected;
|
|
||||||
wxButton* m_DeleteAllButton;
|
|
||||||
wxButton* m_DeleteCurrentMarkerButton;
|
|
||||||
wxStaticText* m_MarkerCountLabel;
|
|
||||||
wxStaticLine* m_staticline1;
|
|
||||||
wxStaticText* m_UnconnectedCountLabel;
|
|
||||||
wxNotebook* m_Notebook;
|
wxNotebook* m_Notebook;
|
||||||
wxPanel* m_panelClearanceListBox;
|
wxPanel* m_panelClearanceListBox;
|
||||||
|
wxBoxSizer* m_sizerButtons;
|
||||||
|
wxButton* m_DeleteCurrentMarkerButton;
|
||||||
|
wxButton* m_DeleteAllMarkersButton;
|
||||||
wxStdDialogButtonSizer* m_sdbSizer1;
|
wxStdDialogButtonSizer* m_sdbSizer1;
|
||||||
wxButton* m_sdbSizer1OK;
|
wxButton* m_sdbSizer1OK;
|
||||||
|
wxButton* m_sdbSizer1Apply;
|
||||||
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 OnActivateDlg( wxActivateEvent& event ) { event.Skip(); }
|
||||||
virtual void OnReportCheckBoxClicked( wxCommandEvent& event ) { event.Skip(); }
|
virtual void OnReportCheckBoxClicked( wxCommandEvent& event ) { event.Skip(); }
|
||||||
|
virtual void OnReportFilenameEdited( 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 OnListUnconnectedClick( wxCommandEvent& event ) { event.Skip(); }
|
|
||||||
virtual void OnDeleteAllClick( wxCommandEvent& event ) { event.Skip(); }
|
|
||||||
virtual void OnDeleteOneClick( wxCommandEvent& event ) { event.Skip(); }
|
|
||||||
virtual void OnChangingMarkerList( wxNotebookEvent& event ) { event.Skip(); }
|
virtual void OnChangingMarkerList( wxNotebookEvent& event ) { event.Skip(); }
|
||||||
virtual void OnLeftDClickClearance( wxMouseEvent& event ) { event.Skip(); }
|
virtual void OnLeftDClickClearance( wxMouseEvent& event ) { event.Skip(); }
|
||||||
virtual void OnMarkerSelectionEvent( wxCommandEvent& event ) { event.Skip(); }
|
virtual void OnMarkerSelectionEvent( wxCommandEvent& event ) { event.Skip(); }
|
||||||
|
@ -100,8 +89,11 @@ class DIALOG_DRC_CONTROL_BASE : public DIALOG_SHIM
|
||||||
virtual void OnLeftDClickUnconnected( wxMouseEvent& event ) { event.Skip(); }
|
virtual void OnLeftDClickUnconnected( wxMouseEvent& event ) { event.Skip(); }
|
||||||
virtual void OnUnconnectedSelectionEvent( wxCommandEvent& event ) { event.Skip(); }
|
virtual void OnUnconnectedSelectionEvent( wxCommandEvent& event ) { event.Skip(); }
|
||||||
virtual void OnRightUpUnconnected( wxMouseEvent& event ) { event.Skip(); }
|
virtual void OnRightUpUnconnected( wxMouseEvent& event ) { event.Skip(); }
|
||||||
|
virtual void OnDeleteOneClick( wxCommandEvent& event ) { event.Skip(); }
|
||||||
|
virtual void OnDeleteAllClick( wxCommandEvent& event ) { event.Skip(); }
|
||||||
|
virtual void OnListUnconnectedClick( wxCommandEvent& event ) { event.Skip(); }
|
||||||
virtual void OnCancelClick( wxCommandEvent& event ) { event.Skip(); }
|
virtual void OnCancelClick( wxCommandEvent& event ) { event.Skip(); }
|
||||||
virtual void OnOkClick( wxCommandEvent& event ) { event.Skip(); }
|
virtual void OnStartdrcClick( wxCommandEvent& event ) { event.Skip(); }
|
||||||
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
@ -109,8 +101,6 @@ class DIALOG_DRC_CONTROL_BASE : public DIALOG_SHIM
|
||||||
wxTextCtrl* m_SetTrackMinWidthCtrl;
|
wxTextCtrl* m_SetTrackMinWidthCtrl;
|
||||||
wxTextCtrl* m_SetViaMinSizeCtrl;
|
wxTextCtrl* m_SetViaMinSizeCtrl;
|
||||||
wxTextCtrl* m_SetMicroViakMinSizeCtrl;
|
wxTextCtrl* m_SetMicroViakMinSizeCtrl;
|
||||||
wxStaticText* m_MarkerCount;
|
|
||||||
wxStaticText* m_UnconnectedCount;
|
|
||||||
DRCLISTBOX* m_ClearanceListBox;
|
DRCLISTBOX* m_ClearanceListBox;
|
||||||
DRCLISTBOX* m_UnconnectedListBox;
|
DRCLISTBOX* m_UnconnectedListBox;
|
||||||
|
|
||||||
|
|
|
@ -131,7 +131,7 @@ DIALOG_EXCHANGE_FOOTPRINTS_BASE::DIALOG_EXCHANGE_FOOTPRINTS_BASE( wxWindow* pare
|
||||||
bottomSizer->Add( m_closeButton, 0, wxALL, 5 );
|
bottomSizer->Add( m_closeButton, 0, wxALL, 5 );
|
||||||
|
|
||||||
|
|
||||||
m_mainSizer->Add( bottomSizer, 0, wxEXPAND, 5 );
|
m_mainSizer->Add( bottomSizer, 0, wxALL|wxEXPAND, 5 );
|
||||||
|
|
||||||
|
|
||||||
this->SetSizer( m_mainSizer );
|
this->SetSizer( m_mainSizer );
|
||||||
|
|
|
@ -1589,7 +1589,7 @@
|
||||||
</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">wxEXPAND</property>
|
<property name="flag">wxALL|wxEXPAND</property>
|
||||||
<property name="proportion">0</property>
|
<property name="proportion">0</property>
|
||||||
<object class="wxBoxSizer" expanded="1">
|
<object class="wxBoxSizer" expanded="1">
|
||||||
<property name="minimum_size"></property>
|
<property name="minimum_size"></property>
|
||||||
|
|
|
@ -118,11 +118,7 @@ void DRC::DestroyDRCDialog( int aReason )
|
||||||
{
|
{
|
||||||
if( m_drcDialog )
|
if( m_drcDialog )
|
||||||
{
|
{
|
||||||
if( aReason == wxID_OK )
|
m_drcDialog->GetRptSettings( &m_doCreateRptFile, m_rptFilename);
|
||||||
{
|
|
||||||
// if user clicked OK, save his choices in this DRC object.
|
|
||||||
m_drcDialog->GetRptSettings( &m_doCreateRptFile, m_rptFilename);
|
|
||||||
}
|
|
||||||
|
|
||||||
m_drcDialog->Destroy();
|
m_drcDialog->Destroy();
|
||||||
m_drcDialog = NULL;
|
m_drcDialog = NULL;
|
||||||
|
|
|
@ -156,11 +156,82 @@ wxString DRC_ITEM::ShowCoord( const wxPoint& aPos )
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
wxString DRC_ITEM::ShowHtml() const
|
||||||
|
{
|
||||||
|
wxString ret;
|
||||||
|
wxString mainText = m_MainText;
|
||||||
|
// a wxHtmlWindows does not like < and > in the text to display
|
||||||
|
// because these chars have a special meaning in html
|
||||||
|
mainText.Replace( wxT("<"), wxT("<") );
|
||||||
|
mainText.Replace( wxT(">"), wxT(">") );
|
||||||
|
|
||||||
|
wxString errText = GetErrorText();
|
||||||
|
errText.Replace( wxT("<"), wxT("<") );
|
||||||
|
errText.Replace( wxT(">"), wxT(">") );
|
||||||
|
|
||||||
|
|
||||||
|
if( m_noCoordinate )
|
||||||
|
{
|
||||||
|
// omit the coordinate, a NETCLASS has no location
|
||||||
|
ret.Printf( _( "<b>%s</b><br> %s" ),
|
||||||
|
GetChars( errText ),
|
||||||
|
GetChars( mainText ) );
|
||||||
|
}
|
||||||
|
else if( m_hasSecondItem )
|
||||||
|
{
|
||||||
|
wxString auxText = m_AuxiliaryText;
|
||||||
|
auxText.Replace( wxT("<"), wxT("<") );
|
||||||
|
auxText.Replace( wxT(">"), wxT(">") );
|
||||||
|
|
||||||
|
// an html fragment for the entire message in the listbox. feel free
|
||||||
|
// to add color if you want:
|
||||||
|
ret.Printf( _( "<b>%s</b><br> %s: %s<br> %s:%s" ),
|
||||||
|
GetChars( errText ),
|
||||||
|
GetChars( ShowCoord( m_MainPosition )), GetChars( mainText ),
|
||||||
|
GetChars( ShowCoord( m_AuxiliaryPosition )), GetChars( auxText ) );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ret.Printf( _( "<b>%s</b><br> %s: %s" ),
|
||||||
|
GetChars( errText ),
|
||||||
|
GetChars( ShowCoord( m_MainPosition ) ), GetChars( mainText ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
wxString DRC_ITEM::ShowReport() const
|
||||||
|
{
|
||||||
|
wxString ret;
|
||||||
|
|
||||||
|
if( m_hasSecondItem )
|
||||||
|
{
|
||||||
|
ret.Printf( wxT( "ErrType(%d): %s\n %s: %s\n %s: %s\n" ),
|
||||||
|
m_ErrorCode,
|
||||||
|
GetChars( GetErrorText() ),
|
||||||
|
GetChars( ShowCoord( m_MainPosition ) ), GetChars( m_MainText ),
|
||||||
|
GetChars( ShowCoord( m_AuxiliaryPosition ) ), GetChars( m_AuxiliaryText ) );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ret.Printf( wxT( "ErrType(%d): %s\n %s: %s\n" ),
|
||||||
|
m_ErrorCode,
|
||||||
|
GetChars( GetErrorText() ),
|
||||||
|
GetChars( ShowCoord( m_MainPosition ) ), GetChars( m_MainText ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
BOARD_ITEM* DRC_ITEM::GetMainItem( BOARD* aBoard ) const
|
BOARD_ITEM* DRC_ITEM::GetMainItem( BOARD* aBoard ) const
|
||||||
{
|
{
|
||||||
return aBoard->GetItem( m_mainItemWeakRef, false /* copper only */ );
|
return aBoard->GetItem( m_mainItemWeakRef, false /* copper only */ );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
BOARD_ITEM* DRC_ITEM::GetAuxiliaryItem( BOARD* aBoard ) const
|
BOARD_ITEM* DRC_ITEM::GetAuxiliaryItem( BOARD* aBoard ) const
|
||||||
{
|
{
|
||||||
return aBoard->GetItem( m_auxItemWeakRef, false /* copper only */ );
|
return aBoard->GetItem( m_auxItemWeakRef, false /* copper only */ );
|
||||||
|
|
Loading…
Reference in New Issue