KiCad PCB EDA Suite
pcb_general_settings.h
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) 2012-2017 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 #ifndef __PCBNEW_GENERAL_SETTINGS_H
25 #define __PCBNEW_GENERAL_SETTINGS_H
26 
27 #include <colors_design_settings.h>
28 #include <vector>
29 
30 class wxConfigBase;
31 class wxString;
32 
34 {
38 };
39 
41 {
42 public:
43  PCB_GENERAL_SETTINGS( FRAME_T aFrameType );
44 
45  void Load( wxConfigBase* aCfg ) override;
46  void Save( wxConfigBase* aCfg ) override;
47 
49  {
50  return m_colorsSettings;
51  }
52 
53  bool m_legacyDrcOn = true; // Not stored, always true when starting pcbnew,
54  // false only on request during routing, and
55  // always for temporary use
57  bool m_legacyUse45DegreeTracks = true; // True to allow horiz, vert. and 45deg only tracks
58  static bool m_use45DegreeGraphicSegments; // True to allow horizontal, vertical and
59  // 45deg only graphic segments
61 
63  static bool m_dragSelects; // True: Drag gesture always draws a selection box,
64  // False: Drag will preselect an item and move it
65 
68 
69 #if defined(KICAD_SCRIPTING) && defined(KICAD_SCRIPTING_ACTION_MENU)
70  std::vector< std::pair<wxString, wxString> > m_pluginSettings; // Settings for action plugins
71 #endif
72 
73 protected:
76 };
77 
78 #endif
Class TOOL_SETTINGS.
Definition: settings.h:38
Handle colors used to draw all items or layers.
void Load(wxConfigBase *aCfg) override
FRAME_T
Enum FRAME_T is the set of EDA_BASE_FRAME derivatives, typically stored in EDA_BASE_FRAME::m_Ident.
Definition: frame_type.h:34
MAGNETIC_PAD_OPTION_VALUES m_magneticPads
PCB_GENERAL_SETTINGS(FRAME_T aFrameType)
static bool m_use45DegreeGraphicSegments
MAGNETIC_PAD_OPTION_VALUES m_magneticTracks
MAGNETIC_PAD_OPTION_VALUES
COLORS_DESIGN_SETTINGS & Colors()
COLORS_DESIGN_SETTINGS m_colorsSettings
Class COLORS_DESIGN_SETTINGS is a list of color settings for designs in Pcbnew.
void Save(wxConfigBase *aCfg) override