mirror of
https://gitlab.com/kicad/code/kicad.git
synced 2025-09-14 10:13:19 +02:00
ADDED: front & back copper area to board statistics.
Also decreased the precision for message text representing areas or volumes. 22150.3510mm^2 seems a bit excessive. Fixes https://gitlab.com/kicad/code/kicad/-/issues/14653
This commit is contained in:
parent
94b7d48f62
commit
676cd4b299
@ -344,7 +344,6 @@ wxString EDA_UNIT_UTILS::UI::StringFromValue( const EDA_IU_SCALE& aIuScale, EDA_
|
||||
|
||||
switch( aUnits )
|
||||
{
|
||||
|
||||
case EDA_UNITS::MILS: format = is_eeschema ? wxT( "%.3f" ) : wxT( "%.5f" ); break;
|
||||
case EDA_UNITS::INCH: format = is_eeschema ? wxT( "%.6f" ) : wxT( "%.8f" ); break;
|
||||
case EDA_UNITS::DEGREES: format = wxT( "%.4f" ); break;
|
||||
@ -409,7 +408,8 @@ wxString EDA_UNIT_UTILS::UI::MessageTextFromValue( const EDA_IU_SCALE& aIuScale,
|
||||
wxString text;
|
||||
const wxChar* format;
|
||||
double value = aValue;
|
||||
bool is_eeschema = ( aIuScale.IU_PER_MM == SCH_IU_PER_MM );
|
||||
bool short_form = ( aIuScale.IU_PER_MM == SCH_IU_PER_MM )
|
||||
|| ( aType == EDA_DATA_TYPE::VOLUME || aType == EDA_DATA_TYPE::AREA );
|
||||
|
||||
switch( aType )
|
||||
{
|
||||
@ -442,11 +442,11 @@ wxString EDA_UNIT_UTILS::UI::MessageTextFromValue( const EDA_IU_SCALE& aIuScale,
|
||||
switch( aUnits )
|
||||
{
|
||||
default:
|
||||
case EDA_UNITS::UM: format = is_eeschema ? wxT( "%.0f" ) : wxT( "%.1f" ); break;
|
||||
case EDA_UNITS::MM: format = is_eeschema ? wxT( "%.2f" ) : wxT( "%.4f" ); break;
|
||||
case EDA_UNITS::CM: format = is_eeschema ? wxT( "%.3f" ) : wxT( "%.5f" ); break;
|
||||
case EDA_UNITS::MILS: format = is_eeschema ? wxT( "%.0f" ) : wxT( "%.2f" ); break;
|
||||
case EDA_UNITS::INCH: format = is_eeschema ? wxT( "%.3f" ) : wxT( "%.4f" ); break;
|
||||
case EDA_UNITS::UM: format = short_form ? wxT( "%.0f" ) : wxT( "%.1f" ); break;
|
||||
case EDA_UNITS::MM: format = short_form ? wxT( "%.2f" ) : wxT( "%.4f" ); break;
|
||||
case EDA_UNITS::CM: format = short_form ? wxT( "%.3f" ) : wxT( "%.5f" ); break;
|
||||
case EDA_UNITS::MILS: format = short_form ? wxT( "%.0f" ) : wxT( "%.2f" ); break;
|
||||
case EDA_UNITS::INCH: format = short_form ? wxT( "%.3f" ) : wxT( "%.4f" ); break;
|
||||
case EDA_UNITS::DEGREES: format = wxT( "%.3f" ); break;
|
||||
case EDA_UNITS::UNSCALED: format = wxT( "%.0f" ); break;
|
||||
case EDA_UNITS::FS: format = wxT( "%.4f" ); break;
|
||||
|
@ -31,6 +31,7 @@
|
||||
#include <wildcards_and_files_ext.h>
|
||||
#include <widgets/wx_grid.h>
|
||||
#include <wx/filedlg.h>
|
||||
#include <convert_basic_shapes_to_polygon.h>
|
||||
|
||||
#define COL_LABEL 0
|
||||
#define COL_AMOUNT 1
|
||||
@ -42,9 +43,10 @@
|
||||
#define COL_TOTAL 3
|
||||
|
||||
// Defines for board view
|
||||
#define ROW_BOARD_WIDTH 0
|
||||
#define ROW_BOARD_HEIGHT 1
|
||||
#define ROW_BOARD_AREA 2
|
||||
#define ROW_BOARD_DIMS 0
|
||||
#define ROW_BOARD_AREA 1
|
||||
#define ROW_FRONT_COPPER_AREA 2
|
||||
#define ROW_BACK_COPPER_AREA 3
|
||||
|
||||
|
||||
/**
|
||||
@ -55,6 +57,7 @@ struct DIALOG_BOARD_STATISTICS_SAVED_STATE
|
||||
DIALOG_BOARD_STATISTICS_SAVED_STATE() :
|
||||
excludeNoPins( false ),
|
||||
subtractHoles( false ),
|
||||
subtractHolesFromCopper( false ),
|
||||
saveReportInitialized(false)
|
||||
{
|
||||
}
|
||||
@ -62,6 +65,7 @@ struct DIALOG_BOARD_STATISTICS_SAVED_STATE
|
||||
// Flags to remember last checkboxes state
|
||||
bool excludeNoPins;
|
||||
bool subtractHoles;
|
||||
bool subtractHolesFromCopper;
|
||||
|
||||
// Variables to save last report file name and folder
|
||||
bool saveReportInitialized; // true after the 3 next string are initialized
|
||||
@ -76,10 +80,12 @@ static DIALOG_BOARD_STATISTICS_SAVED_STATE s_savedDialogState;
|
||||
|
||||
DIALOG_BOARD_STATISTICS::DIALOG_BOARD_STATISTICS( PCB_EDIT_FRAME* aParentFrame ) :
|
||||
DIALOG_BOARD_STATISTICS_BASE( aParentFrame ),
|
||||
m_parentFrame(aParentFrame),
|
||||
m_frame( aParentFrame ),
|
||||
m_boardWidth( 0 ),
|
||||
m_boardHeight( 0 ),
|
||||
m_boardArea( 0.0 ),
|
||||
m_frontCopperArea( 0.0 ),
|
||||
m_backCopperArea( 0.0 ),
|
||||
m_hasOutline( false ),
|
||||
m_startLayerColInitialSize( 1 ),
|
||||
m_stopLayerColInitialSize( 1 )
|
||||
@ -90,35 +96,45 @@ DIALOG_BOARD_STATISTICS::DIALOG_BOARD_STATISTICS( PCB_EDIT_FRAME* aParentFrame )
|
||||
|
||||
m_checkBoxExcludeComponentsNoPins->SetValue( s_savedDialogState.excludeNoPins );
|
||||
m_checkBoxSubtractHoles->SetValue( s_savedDialogState.subtractHoles );
|
||||
m_checkBoxSubtractHolesFromCopper->SetValue( s_savedDialogState.subtractHolesFromCopper );
|
||||
|
||||
wxFont labelFont = KIUI::GetSmallInfoFont( this );
|
||||
m_componentsLabel->SetFont( labelFont );
|
||||
m_boardLabel->SetFont( labelFont );
|
||||
m_padsLabel->SetFont( labelFont );
|
||||
m_viasLabel->SetFont( labelFont );
|
||||
|
||||
// Make labels for grids
|
||||
wxFont headingFont = KIUI::GetStatusFont( this );
|
||||
m_gridComponents->SetCellValue( ROW_LABEL, COL_FRONT_SIDE, _( "Front Side" ) );
|
||||
m_gridComponents->SetCellFont( ROW_LABEL, COL_FRONT_SIDE, headingFont );
|
||||
m_gridComponents->SetCellValue( ROW_LABEL, COL_BOTTOM_SIDE, _( "Back Side" ) );
|
||||
m_gridComponents->SetCellFont( ROW_LABEL, COL_BOTTOM_SIDE, headingFont );
|
||||
m_gridComponents->SetCellValue( ROW_LABEL, COL_TOTAL, _( "Total" ) );
|
||||
m_gridComponents->SetCellFont( ROW_LABEL, COL_TOTAL, headingFont );
|
||||
|
||||
m_gridBoard->SetCellValue( 0, 0, _( "Width:" ) );
|
||||
m_gridBoard->SetCellAlignment( 0, 0, wxALIGN_LEFT, wxALIGN_CENTRE );
|
||||
m_gridBoard->SetCellValue( 1, 0, _( "Height:" ) );
|
||||
m_gridBoard->SetCellAlignment( 1, 0, wxALIGN_LEFT, wxALIGN_CENTRE );
|
||||
m_gridBoard->SetCellValue( 2, 0, _( "Area:" ) );
|
||||
m_gridBoard->SetCellAlignment( 2, 0, wxALIGN_LEFT, wxALIGN_CENTRE );
|
||||
wxFont headingFont = KIUI::GetStatusFont( this );
|
||||
|
||||
wxGrid* grids[] = { m_gridComponents, m_gridPads, m_gridVias, m_gridBoard };
|
||||
for( int col = COL_AMOUNT; col < m_gridComponents->GetNumberCols(); col++ )
|
||||
m_gridComponents->SetCellFont( ROW_LABEL, col, headingFont );
|
||||
|
||||
for( auto& grid : grids )
|
||||
m_gridBoard->SetCellValue( ROW_BOARD_DIMS, COL_LABEL, _( "Dimensions:" ) );
|
||||
m_gridBoard->SetCellValue( ROW_BOARD_AREA, COL_LABEL, _( "Area:" ) );
|
||||
m_gridBoard->SetCellValue( ROW_FRONT_COPPER_AREA, COL_LABEL, _( "Front copper area:" ) );
|
||||
m_gridBoard->SetCellValue( ROW_BACK_COPPER_AREA, COL_LABEL, _( "Back copper area:" ) );
|
||||
|
||||
for( wxGrid* grid : { m_gridComponents, m_gridPads, m_gridVias, m_gridBoard } )
|
||||
{
|
||||
// Remove wxgrid's selection boxes
|
||||
grid->SetCellHighlightPenWidth( 0 );
|
||||
grid->SetColMinimalAcceptableWidth( 80 );
|
||||
for( int i = 0; i < grid->GetNumberRows(); i++ )
|
||||
grid->SetCellAlignment( i, COL_LABEL, wxALIGN_LEFT, wxALIGN_CENTRE );
|
||||
|
||||
for( int row = 0; row < grid->GetNumberRows(); row++ )
|
||||
{
|
||||
grid->SetCellAlignment( row, COL_LABEL, wxALIGN_LEFT, wxALIGN_CENTRE );
|
||||
|
||||
for( int col = COL_AMOUNT; col < grid->GetNumberCols(); col++ )
|
||||
grid->SetCellAlignment( row, col, wxALIGN_RIGHT, wxALIGN_CENTER );
|
||||
}
|
||||
}
|
||||
|
||||
wxFileName fn = m_parentFrame->GetBoard()->GetFileName();
|
||||
wxFileName fn = m_frame->GetBoard()->GetFileName();
|
||||
|
||||
if( !s_savedDialogState.saveReportInitialized
|
||||
|| s_savedDialogState.m_project != Prj().GetProjectFullName() )
|
||||
@ -202,7 +218,12 @@ bool DIALOG_BOARD_STATISTICS::TransferDataToWindow()
|
||||
|
||||
void DIALOG_BOARD_STATISTICS::getDataFromPCB()
|
||||
{
|
||||
BOARD* board = m_parentFrame->GetBoard();
|
||||
BOARD* board = m_frame->GetBoard();
|
||||
SHAPE_POLY_SET frontCopper;
|
||||
SHAPE_POLY_SET backCopper;
|
||||
SHAPE_POLY_SET frontHoles;
|
||||
SHAPE_POLY_SET backHoles;
|
||||
|
||||
m_drillTypes.clear();
|
||||
m_gridDrills->ClearRows();
|
||||
|
||||
@ -385,6 +406,48 @@ void DIALOG_BOARD_STATISTICS::getDataFromPCB()
|
||||
m_boardWidth = bbox.GetWidth();
|
||||
m_boardHeight = bbox.GetHeight();
|
||||
}
|
||||
|
||||
board->RunOnChildren(
|
||||
[&]( BOARD_ITEM* child )
|
||||
{
|
||||
if( child->IsOnLayer( F_Cu ) )
|
||||
child->TransformShapeToPolySet( frontCopper, F_Cu, 0, ARC_LOW_DEF, ERROR_INSIDE );
|
||||
|
||||
if( child->IsOnLayer( B_Cu ) )
|
||||
child->TransformShapeToPolySet( backCopper, B_Cu, 0, ARC_LOW_DEF, ERROR_INSIDE );
|
||||
|
||||
if( child->Type() == PCB_PAD_T )
|
||||
{
|
||||
PAD* pad = static_cast<PAD*>( child );
|
||||
|
||||
if( pad->HasHole() )
|
||||
{
|
||||
pad->TransformHoleToPolygon( frontHoles, 0, ARC_LOW_DEF, ERROR_OUTSIDE );
|
||||
pad->TransformHoleToPolygon( backHoles, 0, ARC_LOW_DEF, ERROR_OUTSIDE );
|
||||
}
|
||||
}
|
||||
else if( child->Type() == PCB_VIA_T )
|
||||
{
|
||||
PCB_VIA* via = static_cast<PCB_VIA*>( child );
|
||||
VECTOR2I center = via->GetPosition();
|
||||
int R = via->GetDrillValue() / 2;
|
||||
|
||||
if( via->IsOnLayer( F_Cu ) )
|
||||
TransformCircleToPolygon( frontHoles, center, R, ARC_LOW_DEF, ERROR_OUTSIDE );
|
||||
|
||||
if( via->IsOnLayer( B_Cu ) )
|
||||
TransformCircleToPolygon( backHoles, center, R, ARC_LOW_DEF, ERROR_OUTSIDE );
|
||||
}
|
||||
}, RECURSE_MODE::RECURSE );
|
||||
|
||||
if( m_checkBoxSubtractHolesFromCopper->GetValue() )
|
||||
{
|
||||
frontCopper.BooleanSubtract( frontHoles );
|
||||
backCopper.BooleanSubtract( backHoles );
|
||||
}
|
||||
|
||||
m_frontCopperArea = frontCopper.Area();
|
||||
m_backCopperArea = backCopper.Area();
|
||||
}
|
||||
|
||||
|
||||
@ -449,21 +512,24 @@ void DIALOG_BOARD_STATISTICS::updateWidets()
|
||||
|
||||
if( m_hasOutline )
|
||||
{
|
||||
m_gridBoard->SetCellValue( ROW_BOARD_WIDTH, COL_AMOUNT,
|
||||
m_parentFrame->MessageTextFromValue( m_boardWidth ) );
|
||||
m_gridBoard->SetCellValue( ROW_BOARD_HEIGHT, COL_AMOUNT,
|
||||
m_parentFrame->MessageTextFromValue( m_boardHeight ) );
|
||||
m_gridBoard->SetCellValue( ROW_BOARD_DIMS, COL_AMOUNT,
|
||||
wxString::Format( wxT( "%s x %s" ),
|
||||
m_frame->MessageTextFromValue( m_boardWidth, false ),
|
||||
m_frame->MessageTextFromValue( m_boardHeight, true ) ) );
|
||||
m_gridBoard->SetCellValue( ROW_BOARD_AREA, COL_AMOUNT,
|
||||
m_parentFrame->MessageTextFromValue( m_boardArea, true,
|
||||
EDA_DATA_TYPE::AREA ) );
|
||||
m_frame->MessageTextFromValue( m_boardArea, true, EDA_DATA_TYPE::AREA ) );
|
||||
}
|
||||
else
|
||||
{
|
||||
m_gridBoard->SetCellValue( ROW_BOARD_WIDTH, COL_AMOUNT, _( "unknown" ) );
|
||||
m_gridBoard->SetCellValue( ROW_BOARD_HEIGHT, COL_AMOUNT, _( "unknown" ) );
|
||||
m_gridBoard->SetCellValue( ROW_BOARD_DIMS, COL_AMOUNT, _( "unknown" ) );
|
||||
m_gridBoard->SetCellValue( ROW_BOARD_AREA, COL_AMOUNT, _( "unknown" ) );
|
||||
}
|
||||
|
||||
m_gridBoard->SetCellValue( ROW_FRONT_COPPER_AREA, COL_AMOUNT,
|
||||
m_frame->MessageTextFromValue( m_frontCopperArea, true, EDA_DATA_TYPE::AREA ) );
|
||||
m_gridBoard->SetCellValue( ROW_BACK_COPPER_AREA, COL_AMOUNT,
|
||||
m_frame->MessageTextFromValue( m_backCopperArea, true, EDA_DATA_TYPE::AREA ) );
|
||||
|
||||
updateDrillGrid();
|
||||
|
||||
m_gridComponents->AutoSize();
|
||||
@ -477,7 +543,7 @@ void DIALOG_BOARD_STATISTICS::updateWidets()
|
||||
|
||||
void DIALOG_BOARD_STATISTICS::updateDrillGrid()
|
||||
{
|
||||
BOARD* board = m_parentFrame->GetBoard();
|
||||
BOARD* board = m_frame->GetBoard();
|
||||
int row = 0;
|
||||
|
||||
for( const DRILL_LINE_ITEM& line : m_drillTypes )
|
||||
@ -505,14 +571,10 @@ void DIALOG_BOARD_STATISTICS::updateDrillGrid()
|
||||
|
||||
m_gridDrills->SetCellValue( row, DRILL_LINE_ITEM::COL_COUNT, formatCount( line.qty ) );
|
||||
m_gridDrills->SetCellValue( row, DRILL_LINE_ITEM::COL_SHAPE, shapeStr );
|
||||
m_gridDrills->SetCellValue( row, DRILL_LINE_ITEM::COL_X_SIZE,
|
||||
m_parentFrame->MessageTextFromValue( line.xSize ) );
|
||||
m_gridDrills->SetCellValue( row, DRILL_LINE_ITEM::COL_Y_SIZE,
|
||||
m_parentFrame->MessageTextFromValue( line.ySize ) );
|
||||
m_gridDrills->SetCellValue( row, DRILL_LINE_ITEM::COL_PLATED,
|
||||
line.isPlated ? _( "PTH" ) : _( "NPTH" ) );
|
||||
m_gridDrills->SetCellValue( row, DRILL_LINE_ITEM::COL_VIA_PAD,
|
||||
line.isPad ? _( "Pad" ) : _( "Via" ) );
|
||||
m_gridDrills->SetCellValue( row, DRILL_LINE_ITEM::COL_X_SIZE, m_frame->MessageTextFromValue( line.xSize ) );
|
||||
m_gridDrills->SetCellValue( row, DRILL_LINE_ITEM::COL_Y_SIZE, m_frame->MessageTextFromValue( line.ySize ) );
|
||||
m_gridDrills->SetCellValue( row, DRILL_LINE_ITEM::COL_PLATED, line.isPlated ? _( "PTH" ) : _( "NPTH" ) );
|
||||
m_gridDrills->SetCellValue( row, DRILL_LINE_ITEM::COL_VIA_PAD, line.isPad ? _( "Pad" ) : _( "Via" ) );
|
||||
m_gridDrills->SetCellValue( row, DRILL_LINE_ITEM::COL_START_LAYER, startLayerStr );
|
||||
m_gridDrills->SetCellValue( row, DRILL_LINE_ITEM::COL_STOP_LAYER, stopLayerStr );
|
||||
|
||||
@ -623,8 +685,7 @@ void DIALOG_BOARD_STATISTICS::adjustDrillGridColumns()
|
||||
}
|
||||
|
||||
double scalingFactor = std::max( 1.0,
|
||||
remainingWidth
|
||||
/ ( m_startLayerColInitialSize + m_stopLayerColInitialSize ) );
|
||||
remainingWidth / ( m_startLayerColInitialSize + m_stopLayerColInitialSize ) );
|
||||
int startLayerColWidth = static_cast<int>( m_startLayerColInitialSize * scalingFactor );
|
||||
int stopLayerColWidth = static_cast<int>( m_stopLayerColInitialSize * scalingFactor );
|
||||
|
||||
@ -637,6 +698,7 @@ void DIALOG_BOARD_STATISTICS::checkboxClicked( wxCommandEvent& aEvent )
|
||||
{
|
||||
s_savedDialogState.excludeNoPins = m_checkBoxExcludeComponentsNoPins->GetValue();
|
||||
s_savedDialogState.subtractHoles = m_checkBoxSubtractHoles->GetValue();
|
||||
s_savedDialogState.subtractHolesFromCopper = m_checkBoxSubtractHolesFromCopper->GetValue();
|
||||
refreshItemsTypes();
|
||||
getDataFromPCB();
|
||||
updateWidets();
|
||||
@ -651,7 +713,7 @@ void DIALOG_BOARD_STATISTICS::saveReportClicked( wxCommandEvent& aEvent )
|
||||
wxString msg;
|
||||
wxString boardName;
|
||||
|
||||
wxFileName fn = m_parentFrame->GetBoard()->GetFileName();
|
||||
wxFileName fn = m_frame->GetBoard()->GetFileName();
|
||||
boardName = fn.GetName();
|
||||
wxFileDialog dlg( this, _( "Save Report File" ), s_savedDialogState.saveReportFolder,
|
||||
s_savedDialogState.saveReportName, FILEEXT::TextFileWildcard(),
|
||||
@ -683,20 +745,23 @@ void DIALOG_BOARD_STATISTICS::saveReportClicked( wxCommandEvent& aEvent )
|
||||
if( m_hasOutline )
|
||||
{
|
||||
msg << wxS( "- " ) << _( "Width" ) << wxS( ": " )
|
||||
<< m_parentFrame->MessageTextFromValue( m_boardWidth ) << wxT( "\n" );
|
||||
<< m_frame->MessageTextFromValue( m_boardWidth ) << wxT( "\n" );
|
||||
msg << wxS( "- " ) << _( "Height" ) << wxS( ": " )
|
||||
<< m_parentFrame->MessageTextFromValue( m_boardHeight ) << wxT( "\n" );
|
||||
<< m_frame->MessageTextFromValue( m_boardHeight ) << wxT( "\n" );
|
||||
msg << wxS( "- " ) << _( "Area" ) + wxS( ": " )
|
||||
<< m_parentFrame->MessageTextFromValue( m_boardArea, true, EDA_DATA_TYPE::AREA );
|
||||
msg << wxT( "\n" );
|
||||
<< m_frame->MessageTextFromValue( m_boardArea, true, EDA_DATA_TYPE::AREA ) << wxT( "\n" );
|
||||
}
|
||||
else
|
||||
{
|
||||
msg << wxS( "- " ) << _( "Width" ) << wxS( ": " ) << _( "unknown" ) << wxT( "\n" );
|
||||
msg << wxS( "- " ) << _( "Height" ) << wxS( ": " ) << _( "unknown" ) << wxT( "\n" );
|
||||
msg << wxS( "- " ) << _( "Dimensions" ) << wxS( ": " ) << _( "unknown" ) << wxT( "\n" );
|
||||
msg << wxS( "- " ) << _( "Area" ) << wxS( ": " ) << _( "unknown" ) << wxT( "\n" );
|
||||
}
|
||||
|
||||
msg << wxS( "- " ) << _( "Front copper area" ) + wxS( ": " )
|
||||
<< m_frame->MessageTextFromValue( m_frontCopperArea, true, EDA_DATA_TYPE::AREA ) << wxT( "\n" );
|
||||
msg << wxS( "- " ) << _( "Back copper area" ) + wxS( ": " )
|
||||
<< m_frame->MessageTextFromValue( m_backCopperArea, true, EDA_DATA_TYPE::AREA ) << wxT( "\n" );
|
||||
|
||||
msg << wxT( "\n" );
|
||||
msg << _( "Pads" ) << wxT( "\n----\n" );
|
||||
|
||||
|
@ -202,11 +202,13 @@ private:
|
||||
|
||||
void drillGridSort( wxGridEvent& aEvent );
|
||||
|
||||
PCB_EDIT_FRAME* m_parentFrame;
|
||||
PCB_EDIT_FRAME* m_frame;
|
||||
|
||||
int m_boardWidth;
|
||||
int m_boardHeight;
|
||||
double m_boardArea;
|
||||
double m_frontCopperArea;
|
||||
double m_backCopperArea;
|
||||
|
||||
bool m_hasOutline; ///< Show if board outline properly defined.
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// C++ code generated with wxFormBuilder (version 4.0.0-0-g0efcecf)
|
||||
// C++ code generated with wxFormBuilder (version 4.2.1-0-g80c4cb6)
|
||||
// http://www.wxformbuilder.org/
|
||||
//
|
||||
// PLEASE DO *NOT* EDIT THIS FILE!
|
||||
@ -35,10 +35,12 @@ DIALOG_BOARD_STATISTICS_BASE::DIALOG_BOARD_STATISTICS_BASE( wxWindow* parent, wx
|
||||
wxBoxSizer* bSizerComponents;
|
||||
bSizerComponents = new wxBoxSizer( wxVERTICAL );
|
||||
|
||||
wxStaticText* componentsLabel;
|
||||
componentsLabel = new wxStaticText( m_generalPanel, wxID_ANY, _("Components"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
componentsLabel->Wrap( -1 );
|
||||
bSizerComponents->Add( componentsLabel, 0, wxALL, 5 );
|
||||
m_componentsLabel = new wxStaticText( m_generalPanel, wxID_ANY, _("Components"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
m_componentsLabel->Wrap( -1 );
|
||||
bSizerComponents->Add( m_componentsLabel, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||
|
||||
|
||||
bSizerComponents->Add( 0, 2, 0, 0, 5 );
|
||||
|
||||
m_gridComponents = new wxGrid( m_generalPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxVSCROLL );
|
||||
|
||||
@ -74,10 +76,12 @@ DIALOG_BOARD_STATISTICS_BASE::DIALOG_BOARD_STATISTICS_BASE( wxWindow* parent, wx
|
||||
wxBoxSizer* bSizerPads;
|
||||
bSizerPads = new wxBoxSizer( wxVERTICAL );
|
||||
|
||||
wxStaticText* padsLabel;
|
||||
padsLabel = new wxStaticText( m_generalPanel, wxID_ANY, _("Pads"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
padsLabel->Wrap( -1 );
|
||||
bSizerPads->Add( padsLabel, 0, wxALL, 5 );
|
||||
m_padsLabel = new wxStaticText( m_generalPanel, wxID_ANY, _("Pads"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
m_padsLabel->Wrap( -1 );
|
||||
bSizerPads->Add( m_padsLabel, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||
|
||||
|
||||
bSizerPads->Add( 0, 2, 0, 0, 5 );
|
||||
|
||||
m_gridPads = new wxGrid( m_generalPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxVSCROLL );
|
||||
|
||||
@ -113,15 +117,17 @@ DIALOG_BOARD_STATISTICS_BASE::DIALOG_BOARD_STATISTICS_BASE( wxWindow* parent, wx
|
||||
wxBoxSizer* bSizerBrdSize;
|
||||
bSizerBrdSize = new wxBoxSizer( wxVERTICAL );
|
||||
|
||||
wxStaticText* boardLabel;
|
||||
boardLabel = new wxStaticText( m_generalPanel, wxID_ANY, _("Board Size"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
boardLabel->Wrap( -1 );
|
||||
bSizerBrdSize->Add( boardLabel, 0, wxALL, 5 );
|
||||
m_boardLabel = new wxStaticText( m_generalPanel, wxID_ANY, _("Board Size"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
m_boardLabel->Wrap( -1 );
|
||||
bSizerBrdSize->Add( m_boardLabel, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||
|
||||
|
||||
bSizerBrdSize->Add( 0, 2, 0, 0, 5 );
|
||||
|
||||
m_gridBoard = new wxGrid( m_generalPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxVSCROLL );
|
||||
|
||||
// Grid
|
||||
m_gridBoard->CreateGrid( 3, 2 );
|
||||
m_gridBoard->CreateGrid( 4, 2 );
|
||||
m_gridBoard->EnableEditing( false );
|
||||
m_gridBoard->EnableGridLines( false );
|
||||
m_gridBoard->EnableDragGridSize( false );
|
||||
@ -152,9 +158,12 @@ DIALOG_BOARD_STATISTICS_BASE::DIALOG_BOARD_STATISTICS_BASE( wxWindow* parent, wx
|
||||
wxBoxSizer* bSizerVias;
|
||||
bSizerVias = new wxBoxSizer( wxVERTICAL );
|
||||
|
||||
viasLabel = new wxStaticText( m_generalPanel, wxID_ANY, _("Vias"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
viasLabel->Wrap( -1 );
|
||||
bSizerVias->Add( viasLabel, 0, wxALL, 5 );
|
||||
m_viasLabel = new wxStaticText( m_generalPanel, wxID_ANY, _("Vias"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
m_viasLabel->Wrap( -1 );
|
||||
bSizerVias->Add( m_viasLabel, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||
|
||||
|
||||
bSizerVias->Add( 0, 2, 0, 0, 5 );
|
||||
|
||||
m_gridVias = new wxGrid( m_generalPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxVSCROLL );
|
||||
|
||||
@ -191,16 +200,19 @@ DIALOG_BOARD_STATISTICS_BASE::DIALOG_BOARD_STATISTICS_BASE( wxWindow* parent, wx
|
||||
bGeneralPanelSizer->Add( fgSizerContents, 1, wxEXPAND, 5 );
|
||||
|
||||
wxGridSizer* gOptionsSizer;
|
||||
gOptionsSizer = new wxGridSizer( 0, 1, 0, 0 );
|
||||
gOptionsSizer = new wxGridSizer( 0, 1, 4, 0 );
|
||||
|
||||
m_checkBoxSubtractHoles = new wxCheckBox( m_generalPanel, wxID_ANY, _("Subtract holes from board area"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
gOptionsSizer->Add( m_checkBoxSubtractHoles, 0, wxEXPAND|wxTOP|wxBOTTOM|wxRIGHT, 4 );
|
||||
gOptionsSizer->Add( m_checkBoxSubtractHoles, 0, wxEXPAND|wxRIGHT, 4 );
|
||||
|
||||
m_checkBoxSubtractHolesFromCopper = new wxCheckBox( m_generalPanel, wxID_ANY, _("Subtract holes from copper areas"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
gOptionsSizer->Add( m_checkBoxSubtractHolesFromCopper, 0, wxRIGHT, 5 );
|
||||
|
||||
m_checkBoxExcludeComponentsNoPins = new wxCheckBox( m_generalPanel, wxID_ANY, _("Exclude footprints with no pads"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
gOptionsSizer->Add( m_checkBoxExcludeComponentsNoPins, 0, wxEXPAND|wxBOTTOM|wxRIGHT, 4 );
|
||||
gOptionsSizer->Add( m_checkBoxExcludeComponentsNoPins, 0, wxEXPAND|wxRIGHT, 5 );
|
||||
|
||||
|
||||
bGeneralPanelSizer->Add( gOptionsSizer, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 2 );
|
||||
bGeneralPanelSizer->Add( gOptionsSizer, 0, wxEXPAND|wxALL, 5 );
|
||||
|
||||
|
||||
m_generalPanel->SetSizer( bGeneralPanelSizer );
|
||||
@ -280,6 +292,7 @@ DIALOG_BOARD_STATISTICS_BASE::DIALOG_BOARD_STATISTICS_BASE( wxWindow* parent, wx
|
||||
// Connect Events
|
||||
this->Connect( wxEVT_SIZE, wxSizeEventHandler( DIALOG_BOARD_STATISTICS_BASE::windowSize ) );
|
||||
m_checkBoxSubtractHoles->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_BOARD_STATISTICS_BASE::checkboxClicked ), NULL, this );
|
||||
m_checkBoxSubtractHolesFromCopper->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_BOARD_STATISTICS_BASE::checkboxClicked ), NULL, this );
|
||||
m_checkBoxExcludeComponentsNoPins->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_BOARD_STATISTICS_BASE::checkboxClicked ), NULL, this );
|
||||
m_gridDrills->Connect( wxEVT_SIZE, wxSizeEventHandler( DIALOG_BOARD_STATISTICS_BASE::drillGridSize ), NULL, this );
|
||||
m_buttonSaveReport->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_BOARD_STATISTICS_BASE::saveReportClicked ), NULL, this );
|
||||
@ -290,6 +303,7 @@ DIALOG_BOARD_STATISTICS_BASE::~DIALOG_BOARD_STATISTICS_BASE()
|
||||
// Disconnect Events
|
||||
this->Disconnect( wxEVT_SIZE, wxSizeEventHandler( DIALOG_BOARD_STATISTICS_BASE::windowSize ) );
|
||||
m_checkBoxSubtractHoles->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_BOARD_STATISTICS_BASE::checkboxClicked ), NULL, this );
|
||||
m_checkBoxSubtractHolesFromCopper->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_BOARD_STATISTICS_BASE::checkboxClicked ), NULL, this );
|
||||
m_checkBoxExcludeComponentsNoPins->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_BOARD_STATISTICS_BASE::checkboxClicked ), NULL, this );
|
||||
m_gridDrills->Disconnect( wxEVT_SIZE, wxSizeEventHandler( DIALOG_BOARD_STATISTICS_BASE::drillGridSize ), NULL, this );
|
||||
m_buttonSaveReport->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_BOARD_STATISTICS_BASE::saveReportClicked ), NULL, this );
|
||||
|
@ -1,34 +1,36 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<wxFormBuilder_Project>
|
||||
<FileVersion major="1" minor="17"/>
|
||||
<FileVersion major="1" minor="18"/>
|
||||
<object class="Project" expanded="true">
|
||||
<property name="class_decoration">; </property>
|
||||
<property name="code_generation">C++</property>
|
||||
<property name="disconnect_events">1</property>
|
||||
<property name="disconnect_mode">source_name</property>
|
||||
<property name="disconnect_php_events">0</property>
|
||||
<property name="disconnect_python_events">0</property>
|
||||
<property name="cpp_class_decoration">; </property>
|
||||
<property name="cpp_disconnect_events">1</property>
|
||||
<property name="cpp_event_generation">connect</property>
|
||||
<property name="cpp_help_provider">none</property>
|
||||
<property name="cpp_namespace"></property>
|
||||
<property name="cpp_precompiled_header"></property>
|
||||
<property name="cpp_use_array_enum">0</property>
|
||||
<property name="cpp_use_enum">0</property>
|
||||
<property name="embedded_files_path">res</property>
|
||||
<property name="encoding">UTF-8</property>
|
||||
<property name="event_generation">connect</property>
|
||||
<property name="file">dialog_board_statistics_base</property>
|
||||
<property name="first_id">1000</property>
|
||||
<property name="help_provider">none</property>
|
||||
<property name="image_path_wrapper_function_name"></property>
|
||||
<property name="indent_with_spaces"></property>
|
||||
<property name="internationalize">1</property>
|
||||
<property name="lua_skip_events">1</property>
|
||||
<property name="lua_ui_table">UI</property>
|
||||
<property name="name">DIALOG_BOARD_STATISTCS_BASE</property>
|
||||
<property name="namespace"></property>
|
||||
<property name="path">.</property>
|
||||
<property name="precompiled_header"></property>
|
||||
<property name="php_disconnect_events">0</property>
|
||||
<property name="php_disconnect_mode">source_name</property>
|
||||
<property name="php_skip_events">1</property>
|
||||
<property name="python_disconnect_events">0</property>
|
||||
<property name="python_disconnect_mode">source_name</property>
|
||||
<property name="python_image_path_wrapper_function_name"></property>
|
||||
<property name="python_indent_with_spaces"></property>
|
||||
<property name="python_skip_events">1</property>
|
||||
<property name="relative_path">1</property>
|
||||
<property name="skip_lua_events">1</property>
|
||||
<property name="skip_php_events">1</property>
|
||||
<property name="skip_python_events">1</property>
|
||||
<property name="ui_table">UI</property>
|
||||
<property name="use_array_enum">0</property>
|
||||
<property name="use_enum">0</property>
|
||||
<property name="use_microsoft_bom">0</property>
|
||||
<property name="use_native_eol">0</property>
|
||||
<object class="Dialog" expanded="true">
|
||||
<property name="aui_managed">0</property>
|
||||
<property name="aui_manager_style">wxAUI_MGR_DEFAULT</property>
|
||||
@ -72,10 +74,10 @@
|
||||
<property name="LeftDockable">1</property>
|
||||
<property name="RightDockable">1</property>
|
||||
<property name="TopDockable">1</property>
|
||||
<property name="aui_layer"></property>
|
||||
<property name="aui_layer">0</property>
|
||||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="aui_position">0</property>
|
||||
<property name="aui_row">0</property>
|
||||
<property name="best_size"></property>
|
||||
<property name="bg"></property>
|
||||
<property name="bitmapsize"></property>
|
||||
@ -130,10 +132,10 @@
|
||||
<property name="LeftDockable">1</property>
|
||||
<property name="RightDockable">1</property>
|
||||
<property name="TopDockable">1</property>
|
||||
<property name="aui_layer"></property>
|
||||
<property name="aui_layer">0</property>
|
||||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="aui_position">0</property>
|
||||
<property name="aui_row">0</property>
|
||||
<property name="best_size"></property>
|
||||
<property name="bg"></property>
|
||||
<property name="caption"></property>
|
||||
@ -209,17 +211,17 @@
|
||||
<property name="permission">none</property>
|
||||
<object class="sizeritem" expanded="false">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxALL</property>
|
||||
<property name="flag">wxTOP|wxRIGHT|wxLEFT</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxStaticText" expanded="false">
|
||||
<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_layer">0</property>
|
||||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="aui_position">0</property>
|
||||
<property name="aui_row">0</property>
|
||||
<property name="best_size"></property>
|
||||
<property name="bg"></property>
|
||||
<property name="caption"></property>
|
||||
@ -249,11 +251,11 @@
|
||||
<property name="minimize_button">0</property>
|
||||
<property name="minimum_size"></property>
|
||||
<property name="moveable">1</property>
|
||||
<property name="name">componentsLabel</property>
|
||||
<property name="name">m_componentsLabel</property>
|
||||
<property name="pane_border">1</property>
|
||||
<property name="pane_position"></property>
|
||||
<property name="pane_size"></property>
|
||||
<property name="permission">none</property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="pin_button">1</property>
|
||||
<property name="pos"></property>
|
||||
<property name="resize">Resizable</property>
|
||||
@ -269,6 +271,16 @@
|
||||
<property name="wrap">-1</property>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="true">
|
||||
<property name="border">5</property>
|
||||
<property name="flag"></property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="spacer" expanded="true">
|
||||
<property name="height">2</property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="width">0</property>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="false">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT</property>
|
||||
@ -278,10 +290,10 @@
|
||||
<property name="LeftDockable">1</property>
|
||||
<property name="RightDockable">1</property>
|
||||
<property name="TopDockable">1</property>
|
||||
<property name="aui_layer"></property>
|
||||
<property name="aui_layer">0</property>
|
||||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="aui_position">0</property>
|
||||
<property name="aui_row">0</property>
|
||||
<property name="autosize_cols">0</property>
|
||||
<property name="autosize_rows">0</property>
|
||||
<property name="best_size"></property>
|
||||
@ -371,17 +383,17 @@
|
||||
<property name="permission">none</property>
|
||||
<object class="sizeritem" expanded="false">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxALL</property>
|
||||
<property name="flag">wxTOP|wxRIGHT|wxLEFT</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxStaticText" expanded="false">
|
||||
<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_layer">0</property>
|
||||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="aui_position">0</property>
|
||||
<property name="aui_row">0</property>
|
||||
<property name="best_size"></property>
|
||||
<property name="bg"></property>
|
||||
<property name="caption"></property>
|
||||
@ -411,11 +423,11 @@
|
||||
<property name="minimize_button">0</property>
|
||||
<property name="minimum_size"></property>
|
||||
<property name="moveable">1</property>
|
||||
<property name="name">padsLabel</property>
|
||||
<property name="name">m_padsLabel</property>
|
||||
<property name="pane_border">1</property>
|
||||
<property name="pane_position"></property>
|
||||
<property name="pane_size"></property>
|
||||
<property name="permission">none</property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="pin_button">1</property>
|
||||
<property name="pos"></property>
|
||||
<property name="resize">Resizable</property>
|
||||
@ -431,6 +443,16 @@
|
||||
<property name="wrap">-1</property>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="true">
|
||||
<property name="border">5</property>
|
||||
<property name="flag"></property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="spacer" expanded="true">
|
||||
<property name="height">2</property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="width">0</property>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="false">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT</property>
|
||||
@ -440,10 +462,10 @@
|
||||
<property name="LeftDockable">1</property>
|
||||
<property name="RightDockable">1</property>
|
||||
<property name="TopDockable">1</property>
|
||||
<property name="aui_layer"></property>
|
||||
<property name="aui_layer">0</property>
|
||||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="aui_position">0</property>
|
||||
<property name="aui_row">0</property>
|
||||
<property name="autosize_cols">0</property>
|
||||
<property name="autosize_rows">0</property>
|
||||
<property name="best_size"></property>
|
||||
@ -533,17 +555,17 @@
|
||||
<property name="permission">none</property>
|
||||
<object class="sizeritem" expanded="false">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxALL</property>
|
||||
<property name="flag">wxTOP|wxRIGHT|wxLEFT</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxStaticText" expanded="false">
|
||||
<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_layer">0</property>
|
||||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="aui_position">0</property>
|
||||
<property name="aui_row">0</property>
|
||||
<property name="best_size"></property>
|
||||
<property name="bg"></property>
|
||||
<property name="caption"></property>
|
||||
@ -573,11 +595,11 @@
|
||||
<property name="minimize_button">0</property>
|
||||
<property name="minimum_size"></property>
|
||||
<property name="moveable">1</property>
|
||||
<property name="name">boardLabel</property>
|
||||
<property name="name">m_boardLabel</property>
|
||||
<property name="pane_border">1</property>
|
||||
<property name="pane_position"></property>
|
||||
<property name="pane_size"></property>
|
||||
<property name="permission">none</property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="pin_button">1</property>
|
||||
<property name="pos"></property>
|
||||
<property name="resize">Resizable</property>
|
||||
@ -593,6 +615,16 @@
|
||||
<property name="wrap">-1</property>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="true">
|
||||
<property name="border">5</property>
|
||||
<property name="flag"></property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="spacer" expanded="true">
|
||||
<property name="height">2</property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="width">0</property>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="false">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT</property>
|
||||
@ -602,10 +634,10 @@
|
||||
<property name="LeftDockable">1</property>
|
||||
<property name="RightDockable">1</property>
|
||||
<property name="TopDockable">1</property>
|
||||
<property name="aui_layer"></property>
|
||||
<property name="aui_layer">0</property>
|
||||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="aui_position">0</property>
|
||||
<property name="aui_row">0</property>
|
||||
<property name="autosize_cols">0</property>
|
||||
<property name="autosize_rows">0</property>
|
||||
<property name="best_size"></property>
|
||||
@ -671,7 +703,7 @@
|
||||
<property name="row_label_values"></property>
|
||||
<property name="row_label_vert_alignment">wxALIGN_CENTER</property>
|
||||
<property name="row_sizes"></property>
|
||||
<property name="rows">3</property>
|
||||
<property name="rows">4</property>
|
||||
<property name="show">1</property>
|
||||
<property name="size"></property>
|
||||
<property name="subclass">; ; forward_declare</property>
|
||||
@ -695,17 +727,17 @@
|
||||
<property name="permission">none</property>
|
||||
<object class="sizeritem" expanded="false">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxALL</property>
|
||||
<property name="flag">wxTOP|wxRIGHT|wxLEFT</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxStaticText" expanded="false">
|
||||
<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_layer">0</property>
|
||||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="aui_position">0</property>
|
||||
<property name="aui_row">0</property>
|
||||
<property name="best_size"></property>
|
||||
<property name="bg"></property>
|
||||
<property name="caption"></property>
|
||||
@ -735,7 +767,7 @@
|
||||
<property name="minimize_button">0</property>
|
||||
<property name="minimum_size"></property>
|
||||
<property name="moveable">1</property>
|
||||
<property name="name">viasLabel</property>
|
||||
<property name="name">m_viasLabel</property>
|
||||
<property name="pane_border">1</property>
|
||||
<property name="pane_position"></property>
|
||||
<property name="pane_size"></property>
|
||||
@ -755,6 +787,16 @@
|
||||
<property name="wrap">-1</property>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="true">
|
||||
<property name="border">5</property>
|
||||
<property name="flag"></property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="spacer" expanded="true">
|
||||
<property name="height">2</property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="width">0</property>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="false">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT</property>
|
||||
@ -764,10 +806,10 @@
|
||||
<property name="LeftDockable">1</property>
|
||||
<property name="RightDockable">1</property>
|
||||
<property name="TopDockable">1</property>
|
||||
<property name="aui_layer"></property>
|
||||
<property name="aui_layer">0</property>
|
||||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="aui_position">0</property>
|
||||
<property name="aui_row">0</property>
|
||||
<property name="autosize_cols">0</property>
|
||||
<property name="autosize_rows">0</property>
|
||||
<property name="best_size"></property>
|
||||
@ -849,8 +891,8 @@
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="false">
|
||||
<property name="border">2</property>
|
||||
<property name="flag">wxEXPAND|wxTOP|wxRIGHT|wxLEFT</property>
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxEXPAND|wxALL</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxGridSizer" expanded="false">
|
||||
<property name="cols">1</property>
|
||||
@ -859,20 +901,20 @@
|
||||
<property name="name">gOptionsSizer</property>
|
||||
<property name="permission">none</property>
|
||||
<property name="rows">0</property>
|
||||
<property name="vgap">0</property>
|
||||
<property name="vgap">4</property>
|
||||
<object class="sizeritem" expanded="false">
|
||||
<property name="border">4</property>
|
||||
<property name="flag">wxEXPAND|wxTOP|wxBOTTOM|wxRIGHT</property>
|
||||
<property name="flag">wxEXPAND|wxRIGHT</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxCheckBox" expanded="false">
|
||||
<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_layer">0</property>
|
||||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="aui_position">0</property>
|
||||
<property name="aui_row">0</property>
|
||||
<property name="best_size"></property>
|
||||
<property name="bg"></property>
|
||||
<property name="caption"></property>
|
||||
@ -926,19 +968,85 @@
|
||||
<event name="OnCheckBox">checkboxClicked</event>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="true">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxRIGHT</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxCheckBox" expanded="true">
|
||||
<property name="BottomDockable">1</property>
|
||||
<property name="LeftDockable">1</property>
|
||||
<property name="RightDockable">1</property>
|
||||
<property name="TopDockable">1</property>
|
||||
<property name="aui_layer">0</property>
|
||||
<property name="aui_name"></property>
|
||||
<property name="aui_position">0</property>
|
||||
<property name="aui_row">0</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="checked">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="drag_accept_files">0</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">Subtract holes from copper areas</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_checkBoxSubtractHolesFromCopper</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">; ; forward_declare</property>
|
||||
<property name="toolbar_pane">0</property>
|
||||
<property name="tooltip"></property>
|
||||
<property name="validator_data_type"></property>
|
||||
<property name="validator_style">wxFILTER_NONE</property>
|
||||
<property name="validator_type">wxDefaultValidator</property>
|
||||
<property name="validator_variable"></property>
|
||||
<property name="window_extra_style"></property>
|
||||
<property name="window_name"></property>
|
||||
<property name="window_style"></property>
|
||||
<event name="OnCheckBox">checkboxClicked</event>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="false">
|
||||
<property name="border">4</property>
|
||||
<property name="flag">wxEXPAND|wxBOTTOM|wxRIGHT</property>
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxEXPAND|wxRIGHT</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxCheckBox" expanded="false">
|
||||
<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_layer">0</property>
|
||||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="aui_position">0</property>
|
||||
<property name="aui_row">0</property>
|
||||
<property name="best_size"></property>
|
||||
<property name="bg"></property>
|
||||
<property name="caption"></property>
|
||||
@ -1006,10 +1114,10 @@
|
||||
<property name="LeftDockable">1</property>
|
||||
<property name="RightDockable">1</property>
|
||||
<property name="TopDockable">1</property>
|
||||
<property name="aui_layer"></property>
|
||||
<property name="aui_layer">0</property>
|
||||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="aui_position">0</property>
|
||||
<property name="aui_row">0</property>
|
||||
<property name="best_size"></property>
|
||||
<property name="bg"></property>
|
||||
<property name="caption"></property>
|
||||
@ -1067,10 +1175,10 @@
|
||||
<property name="LeftDockable">1</property>
|
||||
<property name="RightDockable">1</property>
|
||||
<property name="TopDockable">1</property>
|
||||
<property name="aui_layer"></property>
|
||||
<property name="aui_layer">0</property>
|
||||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="aui_position">0</property>
|
||||
<property name="aui_row">0</property>
|
||||
<property name="autosize_cols">1</property>
|
||||
<property name="autosize_rows">0</property>
|
||||
<property name="best_size"></property>
|
||||
@ -1171,10 +1279,10 @@
|
||||
<property name="LeftDockable">1</property>
|
||||
<property name="RightDockable">1</property>
|
||||
<property name="TopDockable">1</property>
|
||||
<property name="aui_layer"></property>
|
||||
<property name="aui_layer">0</property>
|
||||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="aui_position">0</property>
|
||||
<property name="aui_row">0</property>
|
||||
<property name="auth_needed">0</property>
|
||||
<property name="best_size"></property>
|
||||
<property name="bg"></property>
|
||||
|
@ -1,5 +1,5 @@
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// C++ code generated with wxFormBuilder (version 4.0.0-0-g0efcecf)
|
||||
// C++ code generated with wxFormBuilder (version 4.2.1-0-g80c4cb6)
|
||||
// http://www.wxformbuilder.org/
|
||||
//
|
||||
// PLEASE DO *NOT* EDIT THIS FILE!
|
||||
@ -32,7 +32,6 @@ class WX_GRID;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Class DIALOG_BOARD_STATISTICS_BASE
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
@ -43,12 +42,16 @@ class DIALOG_BOARD_STATISTICS_BASE : public DIALOG_SHIM
|
||||
protected:
|
||||
wxNotebook* topNotebook;
|
||||
wxPanel* m_generalPanel;
|
||||
wxStaticText* m_componentsLabel;
|
||||
wxGrid* m_gridComponents;
|
||||
wxStaticText* m_padsLabel;
|
||||
wxGrid* m_gridPads;
|
||||
wxStaticText* m_boardLabel;
|
||||
wxGrid* m_gridBoard;
|
||||
wxStaticText* viasLabel;
|
||||
wxStaticText* m_viasLabel;
|
||||
wxGrid* m_gridVias;
|
||||
wxCheckBox* m_checkBoxSubtractHoles;
|
||||
wxCheckBox* m_checkBoxSubtractHolesFromCopper;
|
||||
wxCheckBox* m_checkBoxExcludeComponentsNoPins;
|
||||
wxPanel* m_drillsPanel;
|
||||
WX_GRID* m_gridDrills;
|
||||
|
Loading…
x
Reference in New Issue
Block a user