KiCad PCB EDA Suite
panel_setup_mask_and_paste.cpp
Go to the documentation of this file.
1 /*
2  * This program source code file is part of KiCad, a free EDA CAD application.
3  *
4  * Copyright (C) 2019-2021 KiCad Developers, see AUTHORS.txt for contributors.
5  *
6  * This program is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU General Public License
8  * as published by the Free Software Foundation; either version 2
9  * of the License, or (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, you may find one here:
18  * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
19  * or you may search the http://www.gnu.org website for the version 2 license,
20  * or you may write to the Free Software Foundation, Inc.,
21  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
22  */
23 
24 
25 #include <pcb_edit_frame.h>
26 #include <board_design_settings.h>
29 #include <wx/treebook.h>
30 
31 
33  PCB_EDIT_FRAME* aFrame ) :
34  PANEL_SETUP_MASK_AND_PASTE_BASE( aParent->GetTreebook() ),
35  m_maskMargin( aFrame, m_maskMarginLabel, m_maskMarginCtrl, m_maskMarginUnits ),
36  m_maskMinWidth( aFrame, m_maskMinWidthLabel, m_maskMinWidthCtrl, m_maskMinWidthUnits ),
37  m_pasteMargin( aFrame, m_pasteMarginLabel, m_pasteMarginCtrl, m_pasteMarginUnits ),
38  m_pasteMarginRatio( aFrame, m_pasteMarginRatioLabel, m_pasteMarginRatioCtrl,
39  m_pasteMarginRatioUnits )
40 {
41  m_Frame = aFrame;
43 
44  m_staticTextInfoPaste->SetFont( KIUI::GetInfoFont( this ).Italic() );
45 
47 
50 }
51 
52 
54 {
59 
60  return true;
61 }
62 
63 
65 {
66  // These are all stored in project file, not board, so no need for OnModify()
71 
72  return true;
73 }
74 
75 
77 {
78  BOARD_DESIGN_SETTINGS* savedSettings = m_BrdSettings;
79 
80  m_BrdSettings = &aBoard->GetDesignSettings();
82 
83  m_BrdSettings = savedSettings;
84 }
PANEL_SETUP_MASK_AND_PASTE(PAGED_DIALOG *aParent, PCB_EDIT_FRAME *aFrame)
virtual void SetNegativeZero()
Definition: unit_binder.h:67
wxFont GetInfoFont(wxWindow *aWindow)
Definition: ui_common.cpp:144
BOARD_DESIGN_SETTINGS & GetDesignSettings() const
Definition: board.cpp:590
BOARD_DESIGN_SETTINGS * m_BrdSettings
Class PANEL_SETUP_MASK_AND_PASTE_BASE.
virtual void SetUnits(EDA_UNITS aUnits)
Normally not needed (as the UNIT_BINDER inherits from the parent frame), but can be used to set to DE...
Definition: unit_binder.cpp:92
Information pertinent to a Pcbnew printed circuit board.
Definition: board.h:190
virtual void SetValue(int aValue)
Set new value (in Internal Units) for the text field, taking care of units conversion.
The main frame for Pcbnew.
virtual long long int GetValue()
Return the current value in Internal Units.
BOARD * GetBoard() const
virtual void SetDoubleValue(double aValue)
Set new value (in Internal Units) for the text field, taking care of units conversion.
virtual double GetDoubleValue()
Return the current value in Internal Units.
Container for design settings for a BOARD object.