KiCad PCB EDA Suite
footprint_editor_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) 2020 Jon Evans <jon@craftyjon.com>
5  * Copyright (C) 2020 KiCad Developers, see AUTHORS.txt for contributors.
6  *
7  * This program is free software: you can redistribute it and/or modify it
8  * under the terms of the GNU General Public License as published by the
9  * Free Software Foundation, either version 3 of the License, or (at your
10  * option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful, but
13  * WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  * General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License along
18  * with this program. If not, see <http://www.gnu.org/licenses/>.
19  */
20 
21 #ifndef FOOTPRINT_EDITOR_SETTINGS_H_
22 #define FOOTPRINT_EDITOR_SETTINGS_H_
23 
24 #include <board_design_settings.h>
25 #include <settings/app_settings.h>
26 #include <pcbnew_settings.h>
28 
29 
31 {
32 public:
33  struct USER_GRID
34  {
35  double size_x;
36  double size_y;
37  int units;
38  };
39 
41 
43 
44  virtual bool MigrateFromLegacy( wxConfigBase* aLegacyConfig ) override;
45 
47  // TODO: factor out the relevant stuff so the whole BDS doesn't have to be here
49 
50  // Only the magneticPads element is used
52 
54 
56 
58 
59  bool m_Use45DegreeGraphicSegments; // True to constraint graphic lines to horizontal,
60  // vertical and 45ยบ
61 
63 
65 
67 
69 
70  std::vector<LAYER_PRESET> m_LayerPresets;
71 
73 
74 protected:
75 
76  virtual std::string getLegacyFrameName() const override { return "ModEditFrame"; }
77 
78 private:
79 
80  bool migrateSchema0to1();
81 };
82 
83 
84 #endif
PCB_DISPLAY_OPTIONS handles display options like enable/disable some optional drawings.
APP_SETTINGS_BASE is a settings class that should be derived for each standalone KiCad application.
Definition: app_settings.h:99
SELECTION_FILTER_OPTIONS m_SelectionFilter
This file contains data structures that are saved in the project file or project local settings file ...
virtual std::string getLegacyFrameName() const override
std::vector< LAYER_PRESET > m_LayerPresets
virtual bool MigrateFromLegacy(wxConfigBase *aLegacyConfig) override
Migrates from wxConfig to JSON-based configuration.
BOARD_DESIGN_SETTINGS m_DesignSettings
Only some of these settings are actually used for footprint editing.
BOARD_DESIGN_SETTINGS contains design settings for a BOARD object.