You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

302 lines
12 KiB

  1. ///////////////////////////////////////////////////////////////////////////
  2. // C++ code generated with wxFormBuilder (version Oct 26 2018)
  3. // http://www.wxformbuilder.org/
  4. //
  5. // PLEASE DO *NOT* EDIT THIS FILE!
  6. ///////////////////////////////////////////////////////////////////////////
  7. #include "dialog_board_statistics_base.h"
  8. ///////////////////////////////////////////////////////////////////////////
  9. DIALOG_BOARD_STATISTICS_BASE::DIALOG_BOARD_STATISTICS_BASE( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : DIALOG_SHIM( parent, id, title, pos, size, style )
  10. {
  11. this->SetSizeHints( wxDefaultSize, wxDefaultSize );
  12. wxBoxSizer* bMainBoxSizer;
  13. bMainBoxSizer = new wxBoxSizer( wxVERTICAL );
  14. topNotebook = new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
  15. generalPanel = new wxPanel( topNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
  16. wxBoxSizer* bGeneralPanelSizer;
  17. bGeneralPanelSizer = new wxBoxSizer( wxVERTICAL );
  18. wxFlexGridSizer* fgSizerContents;
  19. fgSizerContents = new wxFlexGridSizer( 0, 2, 0, 0 );
  20. fgSizerContents->AddGrowableCol( 0 );
  21. fgSizerContents->AddGrowableCol( 1 );
  22. fgSizerContents->AddGrowableRow( 0 );
  23. fgSizerContents->AddGrowableRow( 1 );
  24. fgSizerContents->SetFlexibleDirection( wxBOTH );
  25. fgSizerContents->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_ALL );
  26. wxBoxSizer* bSizerComponents;
  27. bSizerComponents = new wxBoxSizer( wxVERTICAL );
  28. wxStaticText* componentsLabel;
  29. componentsLabel = new wxStaticText( generalPanel, wxID_ANY, _("Components"), wxDefaultPosition, wxDefaultSize, 0 );
  30. componentsLabel->Wrap( -1 );
  31. bSizerComponents->Add( componentsLabel, 0, wxALL, 5 );
  32. m_gridComponents = new wxGrid( generalPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxVSCROLL );
  33. // Grid
  34. m_gridComponents->CreateGrid( 5, 4 );
  35. m_gridComponents->EnableEditing( false );
  36. m_gridComponents->EnableGridLines( false );
  37. m_gridComponents->EnableDragGridSize( false );
  38. m_gridComponents->SetMargins( 0, 0 );
  39. // Columns
  40. m_gridComponents->EnableDragColMove( false );
  41. m_gridComponents->EnableDragColSize( true );
  42. m_gridComponents->SetColLabelSize( 0 );
  43. m_gridComponents->SetColLabelAlignment( wxALIGN_CENTER, wxALIGN_CENTER );
  44. // Rows
  45. m_gridComponents->EnableDragRowSize( true );
  46. m_gridComponents->SetRowLabelSize( 0 );
  47. m_gridComponents->SetRowLabelAlignment( wxALIGN_CENTER, wxALIGN_CENTER );
  48. // Label Appearance
  49. m_gridComponents->SetLabelFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
  50. // Cell Defaults
  51. m_gridComponents->SetDefaultCellAlignment( wxALIGN_CENTER, wxALIGN_TOP );
  52. m_gridComponents->SetMaxSize( wxSize( -1,300 ) );
  53. bSizerComponents->Add( m_gridComponents, 1, wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT, 5 );
  54. fgSizerContents->Add( bSizerComponents, 1, wxEXPAND|wxTOP|wxBOTTOM|wxRIGHT, 5 );
  55. wxBoxSizer* bSizerPads;
  56. bSizerPads = new wxBoxSizer( wxVERTICAL );
  57. wxStaticText* padsLabel;
  58. padsLabel = new wxStaticText( generalPanel, wxID_ANY, _("Pads"), wxDefaultPosition, wxDefaultSize, 0 );
  59. padsLabel->Wrap( -1 );
  60. bSizerPads->Add( padsLabel, 0, wxALL, 5 );
  61. m_gridPads = new wxGrid( generalPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxVSCROLL );
  62. // Grid
  63. m_gridPads->CreateGrid( 5, 2 );
  64. m_gridPads->EnableEditing( false );
  65. m_gridPads->EnableGridLines( false );
  66. m_gridPads->EnableDragGridSize( false );
  67. m_gridPads->SetMargins( 0, 0 );
  68. // Columns
  69. m_gridPads->EnableDragColMove( false );
  70. m_gridPads->EnableDragColSize( true );
  71. m_gridPads->SetColLabelSize( 0 );
  72. m_gridPads->SetColLabelAlignment( wxALIGN_CENTER, wxALIGN_CENTER );
  73. // Rows
  74. m_gridPads->EnableDragRowSize( true );
  75. m_gridPads->SetRowLabelSize( 0 );
  76. m_gridPads->SetRowLabelAlignment( wxALIGN_RIGHT, wxALIGN_CENTER );
  77. // Label Appearance
  78. m_gridPads->SetLabelFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
  79. // Cell Defaults
  80. m_gridPads->SetDefaultCellAlignment( wxALIGN_CENTER, wxALIGN_TOP );
  81. m_gridPads->SetMaxSize( wxSize( -1,300 ) );
  82. bSizerPads->Add( m_gridPads, 1, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
  83. fgSizerContents->Add( bSizerPads, 1, wxEXPAND|wxTOP|wxBOTTOM|wxLEFT, 5 );
  84. wxBoxSizer* bSizerBrdSize;
  85. bSizerBrdSize = new wxBoxSizer( wxVERTICAL );
  86. wxStaticText* boardLabel;
  87. boardLabel = new wxStaticText( generalPanel, wxID_ANY, _("Board Size"), wxDefaultPosition, wxDefaultSize, 0 );
  88. boardLabel->Wrap( -1 );
  89. bSizerBrdSize->Add( boardLabel, 0, wxALL, 5 );
  90. m_gridBoard = new wxGrid( generalPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxVSCROLL );
  91. // Grid
  92. m_gridBoard->CreateGrid( 3, 2 );
  93. m_gridBoard->EnableEditing( false );
  94. m_gridBoard->EnableGridLines( false );
  95. m_gridBoard->EnableDragGridSize( false );
  96. m_gridBoard->SetMargins( 0, 0 );
  97. // Columns
  98. m_gridBoard->EnableDragColMove( false );
  99. m_gridBoard->EnableDragColSize( true );
  100. m_gridBoard->SetColLabelSize( 0 );
  101. m_gridBoard->SetColLabelAlignment( wxALIGN_CENTER, wxALIGN_CENTER );
  102. // Rows
  103. m_gridBoard->EnableDragRowSize( true );
  104. m_gridBoard->SetRowLabelSize( 0 );
  105. m_gridBoard->SetRowLabelAlignment( wxALIGN_CENTER, wxALIGN_CENTER );
  106. // Label Appearance
  107. m_gridBoard->SetLabelFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
  108. // Cell Defaults
  109. m_gridBoard->SetDefaultCellAlignment( wxALIGN_CENTER, wxALIGN_TOP );
  110. m_gridBoard->SetMaxSize( wxSize( -1,300 ) );
  111. bSizerBrdSize->Add( m_gridBoard, 1, wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT, 5 );
  112. fgSizerContents->Add( bSizerBrdSize, 1, wxEXPAND|wxRIGHT, 5 );
  113. wxBoxSizer* bSizerVias;
  114. bSizerVias = new wxBoxSizer( wxVERTICAL );
  115. viasLabel = new wxStaticText( generalPanel, wxID_ANY, _("Vias"), wxDefaultPosition, wxDefaultSize, 0 );
  116. viasLabel->Wrap( -1 );
  117. bSizerVias->Add( viasLabel, 0, wxALL, 5 );
  118. m_gridVias = new wxGrid( generalPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxVSCROLL );
  119. // Grid
  120. m_gridVias->CreateGrid( 4, 2 );
  121. m_gridVias->EnableEditing( false );
  122. m_gridVias->EnableGridLines( false );
  123. m_gridVias->EnableDragGridSize( false );
  124. m_gridVias->SetMargins( 0, 0 );
  125. // Columns
  126. m_gridVias->EnableDragColMove( false );
  127. m_gridVias->EnableDragColSize( true );
  128. m_gridVias->SetColLabelSize( 0 );
  129. m_gridVias->SetColLabelAlignment( wxALIGN_CENTER, wxALIGN_CENTER );
  130. // Rows
  131. m_gridVias->EnableDragRowSize( true );
  132. m_gridVias->SetRowLabelSize( 0 );
  133. m_gridVias->SetRowLabelAlignment( wxALIGN_CENTER, wxALIGN_CENTER );
  134. // Label Appearance
  135. m_gridVias->SetLabelFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
  136. // Cell Defaults
  137. m_gridVias->SetDefaultCellAlignment( wxALIGN_CENTER, wxALIGN_TOP );
  138. m_gridVias->SetMaxSize( wxSize( -1,300 ) );
  139. bSizerVias->Add( m_gridVias, 1, wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT, 5 );
  140. fgSizerContents->Add( bSizerVias, 1, wxEXPAND|wxLEFT, 5 );
  141. bGeneralPanelSizer->Add( fgSizerContents, 1, wxEXPAND, 5 );
  142. wxGridSizer* gOptionsSizer;
  143. gOptionsSizer = new wxGridSizer( 0, 2, 0, 0 );
  144. m_checkBoxSubtractHoles = new wxCheckBox( generalPanel, wxID_ANY, _("Subtract holes from board area"), wxDefaultPosition, wxDefaultSize, 0 );
  145. gOptionsSizer->Add( m_checkBoxSubtractHoles, 0, wxALL|wxEXPAND, 5 );
  146. m_checkBoxExcludeComponentsNoPins = new wxCheckBox( generalPanel, wxID_ANY, _("Exclude components with no pins"), wxDefaultPosition, wxDefaultSize, 0 );
  147. gOptionsSizer->Add( m_checkBoxExcludeComponentsNoPins, 0, wxALL|wxEXPAND, 5 );
  148. bGeneralPanelSizer->Add( gOptionsSizer, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 10 );
  149. generalPanel->SetSizer( bGeneralPanelSizer );
  150. generalPanel->Layout();
  151. bGeneralPanelSizer->Fit( generalPanel );
  152. topNotebook->AddPage( generalPanel, _("General"), true );
  153. drillsPanel = new wxPanel( topNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
  154. wxBoxSizer* bDrillsSizer;
  155. bDrillsSizer = new wxBoxSizer( wxVERTICAL );
  156. m_gridDrills = new wxGrid( drillsPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
  157. // Grid
  158. m_gridDrills->CreateGrid( 0, 8 );
  159. m_gridDrills->EnableEditing( false );
  160. m_gridDrills->EnableGridLines( true );
  161. m_gridDrills->EnableDragGridSize( true );
  162. m_gridDrills->SetMargins( 0, 0 );
  163. // Columns
  164. m_gridDrills->AutoSizeColumns();
  165. m_gridDrills->EnableDragColMove( true );
  166. m_gridDrills->EnableDragColSize( true );
  167. m_gridDrills->SetColLabelSize( 20 );
  168. m_gridDrills->SetColLabelValue( 0, _("Count") );
  169. m_gridDrills->SetColLabelValue( 1, _("Shape") );
  170. m_gridDrills->SetColLabelValue( 2, _("X Size") );
  171. m_gridDrills->SetColLabelValue( 3, _("Y Size") );
  172. m_gridDrills->SetColLabelValue( 4, _("Plated") );
  173. m_gridDrills->SetColLabelValue( 5, _("Via/Pad") );
  174. m_gridDrills->SetColLabelValue( 6, _("Start Layer") );
  175. m_gridDrills->SetColLabelValue( 7, _("Stop Layer") );
  176. m_gridDrills->SetColLabelAlignment( wxALIGN_CENTER, wxALIGN_CENTER );
  177. // Rows
  178. m_gridDrills->EnableDragRowSize( true );
  179. m_gridDrills->SetRowLabelSize( 0 );
  180. m_gridDrills->SetRowLabelAlignment( wxALIGN_CENTER, wxALIGN_CENTER );
  181. // Label Appearance
  182. m_gridDrills->SetLabelFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
  183. // Cell Defaults
  184. m_gridDrills->SetDefaultCellAlignment( wxALIGN_CENTER, wxALIGN_TOP );
  185. m_gridDrills->SetMaxSize( wxSize( -1,300 ) );
  186. bDrillsSizer->Add( m_gridDrills, 1, wxALL|wxEXPAND, 5 );
  187. drillsPanel->SetSizer( bDrillsSizer );
  188. drillsPanel->Layout();
  189. bDrillsSizer->Fit( drillsPanel );
  190. topNotebook->AddPage( drillsPanel, _("Drill Holes"), false );
  191. bMainBoxSizer->Add( topNotebook, 1, wxEXPAND | wxALL, 5 );
  192. wxBoxSizer* bSizerBottom;
  193. bSizerBottom = new wxBoxSizer( wxHORIZONTAL );
  194. m_buttonSaveReport = new wxButton( this, wxID_ANY, _("Generate Report File..."), wxDefaultPosition, wxDefaultSize, 0 );
  195. bSizerBottom->Add( m_buttonSaveReport, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 15 );
  196. m_sdbControlSizer = new wxStdDialogButtonSizer();
  197. m_sdbControlSizerCancel = new wxButton( this, wxID_CANCEL );
  198. m_sdbControlSizer->AddButton( m_sdbControlSizerCancel );
  199. m_sdbControlSizer->Realize();
  200. bSizerBottom->Add( m_sdbControlSizer, 1, wxBOTTOM|wxLEFT|wxRIGHT|wxTOP, 5 );
  201. bMainBoxSizer->Add( bSizerBottom, 0, wxEXPAND, 5 );
  202. this->SetSizer( bMainBoxSizer );
  203. this->Layout();
  204. bMainBoxSizer->Fit( this );
  205. this->Centre( wxBOTH );
  206. // Connect Events
  207. this->Connect( wxEVT_SIZE, wxSizeEventHandler( DIALOG_BOARD_STATISTICS_BASE::windowSize ) );
  208. m_checkBoxSubtractHoles->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_BOARD_STATISTICS_BASE::checkboxClicked ), NULL, this );
  209. m_checkBoxExcludeComponentsNoPins->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_BOARD_STATISTICS_BASE::checkboxClicked ), NULL, this );
  210. m_gridDrills->Connect( wxEVT_SIZE, wxSizeEventHandler( DIALOG_BOARD_STATISTICS_BASE::drillGridSize ), NULL, this );
  211. m_buttonSaveReport->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_BOARD_STATISTICS_BASE::saveReportClicked ), NULL, this );
  212. }
  213. DIALOG_BOARD_STATISTICS_BASE::~DIALOG_BOARD_STATISTICS_BASE()
  214. {
  215. // Disconnect Events
  216. this->Disconnect( wxEVT_SIZE, wxSizeEventHandler( DIALOG_BOARD_STATISTICS_BASE::windowSize ) );
  217. m_checkBoxSubtractHoles->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_BOARD_STATISTICS_BASE::checkboxClicked ), NULL, this );
  218. m_checkBoxExcludeComponentsNoPins->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_BOARD_STATISTICS_BASE::checkboxClicked ), NULL, this );
  219. m_gridDrills->Disconnect( wxEVT_SIZE, wxSizeEventHandler( DIALOG_BOARD_STATISTICS_BASE::drillGridSize ), NULL, this );
  220. m_buttonSaveReport->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_BOARD_STATISTICS_BASE::saveReportClicked ), NULL, this );
  221. }