1 /* 2 * This program source code file is part of KiCad, a free EDA CAD application. 3 * 4 * Copyright (C) 2017-2018 KiCad Developers, see AUTHORS.txt for contributors. 5 * 6 * This program is free software: you can redistribute it and/or modify it 7 * under the terms of the GNU General Public License as published by the 8 * Free Software Foundation, either version 3 of the License, or (at your 9 * option) any later version. 10 * 11 * This program is distributed in the hope that it will be useful, but 12 * WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * General Public License for more details. 15 * 16 * You should have received a copy of the GNU General Public License along 17 * with this program. If not, see <http://www.gnu.org/licenses/>. 18 */ 19 20 21 #ifndef KICAD_DIALOG_BOARD_SETUP_H 22 #define KICAD_DIALOG_BOARD_SETUP_H 23 24 #include <widgets/paged_dialog.h> 25 26 class PCB_EDIT_FRAME; 27 class PANEL_SETUP_CONSTRAINTS; 28 class PANEL_SETUP_LAYERS; 29 class PANEL_SETUP_TEXT_AND_GRAPHICS; 30 class PANEL_SETUP_NETCLASSES; 31 class PANEL_SETUP_RULES; 32 class PANEL_SETUP_TRACKS_AND_VIAS; 33 class PANEL_SETUP_MASK_AND_PASTE; 34 class PANEL_SETUP_BOARD_STACKUP; 35 class PANEL_SETUP_BOARD_FINISH; 36 class PANEL_SETUP_SEVERITIES; 37 class PANEL_TEXT_VARIABLES; 38 39 40 class DIALOG_BOARD_SETUP : public PAGED_DIALOG 41 { 42 public: 43 DIALOG_BOARD_SETUP( PCB_EDIT_FRAME* aFrame ); 44 ~DIALOG_BOARD_SETUP(); 45 46 protected: 47 void OnAuxiliaryAction( wxCommandEvent& event ) override; 48 49 PCB_EDIT_FRAME* m_frame; 50 51 PANEL_SETUP_CONSTRAINTS* m_constraints; 52 PANEL_SETUP_LAYERS* m_layers; 53 PANEL_SETUP_TEXT_AND_GRAPHICS* m_textAndGraphics; 54 PANEL_SETUP_NETCLASSES* m_netclasses; 55 PANEL_SETUP_RULES* m_rules; 56 PANEL_SETUP_TRACKS_AND_VIAS* m_tracksAndVias; 57 PANEL_SETUP_MASK_AND_PASTE* m_maskAndPaste; 58 PANEL_SETUP_BOARD_STACKUP* m_physicalStackup; 59 PANEL_SETUP_BOARD_FINISH* m_boardFinish; 60 PANEL_SETUP_SEVERITIES* m_severities; 61 PANEL_TEXT_VARIABLES* m_textVars; 62 63 std::vector<bool> m_macHack; 64 65 // event handlers 66 void OnPageChange( wxBookCtrlEvent& event ); 67 68 private: 69 int m_currentPage; // the current page index 70 int m_physicalStackupPage; // the page index of the PANEL_SETUP_BOARD_STACKUP page 71 int m_layerSetupPage; // the page index of the PANEL_SETUP_LAYERS page 72 }; 73 74 75 #endif //KICAD_DIALOG_BOARD_SETUP_H 76