KiCad PCB EDA Suite
Loading...
Searching...
No Matches
eeschema/menubar.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) 2018 Jean-Pierre Charras, jp.charras at wanadoo.fr
5 * Copyright (C) 2009 Wayne Stambaugh <[email protected]>
6 * Copyright The KiCad Developers, see AUTHORS.txt for contributors.
7 * Copyright (C) 2019 CERN
8 *
9 * This program is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU General Public License
11 * as published by the Free Software Foundation; either version 2
12 * of the License, or (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program. If not, see <https://www.gnu.org/licenses/>.
21 */
22
23#include <bitmaps.h>
24#include <file_history.h>
25#include <kiface_base.h>
26#include <pgm_base.h>
27#include <schematic.h>
29#include <tool/action_manager.h>
30#include <tool/action_menu.h>
31#include <tool/tool_manager.h>
33#include <tools/sch_actions.h>
34#include "eeschema_id.h"
35#include "sch_edit_frame.h"
36#include <widgets/wx_menubar.h>
38#include <advanced_config.h>
39
40
42{
44
45 // wxWidgets handles the Mac Application menu behind the scenes, but that means
46 // we always have to start from scratch with a new wxMenuBar.
47 wxMenuBar* oldMenuBar = GetMenuBar();
48 WX_MENUBAR* menuBar = new WX_MENUBAR();
49
50 //-- File menu -----------------------------------------------------------
51 //
52 ACTION_MENU* fileMenu = new ACTION_MENU( false, selTool );
53 static ACTION_MENU* openRecentMenu;
54
55 if( Kiface().IsSingle() ) // When not under a project mgr
56 {
57 FILE_HISTORY& fileHistory = GetFileHistory();
58
59 // Add this menu to the list of menus managed by the file history
60 // (the file history will be updated when adding/removing files in history)
61 if( !openRecentMenu )
62 {
63 openRecentMenu = new ACTION_MENU( false, selTool );
64 openRecentMenu->SetIcon( BITMAPS::recent );
65
66 fileHistory.UseMenu( openRecentMenu );
67 fileHistory.AddFilesToMenu( openRecentMenu );
68 }
69
70 // Ensure the title is up to date after changing language
71 openRecentMenu->SetTitle( _( "Open Recent" ) );
72 fileHistory.UpdateClearText( openRecentMenu, _( "Clear Recent Files" ) );
73
74 fileMenu->Add( ACTIONS::doNew );
75 fileMenu->Add( ACTIONS::open );
76
77 wxMenuItem* item = fileMenu->Add( openRecentMenu->Clone() );
78
79 // Add the file menu condition here since it needs the item ID for the submenu
81 cond.Enable( FILE_HISTORY::FileHistoryNotEmpty( fileHistory ) );
82 RegisterUIUpdateHandler( item->GetId(), cond );
83 fileMenu->AppendSeparator();
84 }
85
86 fileMenu->Add( ACTIONS::save );
87
88 if( Kiface().IsSingle() )
89 fileMenu->Add( ACTIONS::saveAs );
90 else
92
93 fileMenu->Add( ACTIONS::revert );
94
95 fileMenu->AppendSeparator();
96
97 // Import submenu
98 ACTION_MENU* submenuImport = new ACTION_MENU( false, selTool );
99 submenuImport->SetTitle( _( "Import" ) );
100 submenuImport->SetIcon( BITMAPS::import );
101
102 submenuImport->Add( SCH_ACTIONS::importNonKicadSchematic, ACTION_MENU::NORMAL, _( "Non-KiCad Schematic..." ) );
103 submenuImport->Add( SCH_ACTIONS::importFPAssignments, ACTION_MENU::NORMAL, _( "Footprint Assignments..." ) );
104 submenuImport->Add( SCH_ACTIONS::importGraphics, ACTION_MENU::NORMAL, _( "Graphics..." ) );
105
106 fileMenu->Add( submenuImport );
107
108
109 // Export submenu
110 ACTION_MENU* submenuExport = new ACTION_MENU( false, selTool );
111 submenuExport->SetTitle( _( "Export" ) );
112 submenuExport->SetIcon( BITMAPS::export_file );
113 submenuExport->Add( SCH_ACTIONS::drawSheetOnClipboard, ACTION_MENU::NORMAL, _( "Drawing to Clipboard" ) );
114 submenuExport->Add( SCH_ACTIONS::exportNetlist, ACTION_MENU::NORMAL, _( "Netlist..." ) );
115 submenuExport->Add( SCH_ACTIONS::exportSymbolsToLibrary, ACTION_MENU::NORMAL, _( "Symbols..." ) );
116 fileMenu->Add( submenuExport );
117
118 fileMenu->AppendSeparator();
120
121 wxMenuItem* historyItem = fileMenu->Add( SCH_ACTIONS::compareSchematicWithHistory );
122 ACTION_CONDITIONS historyCond;
123 historyCond.Enable(
124 []( const SELECTION& )
125 {
127 return cs && cs->m_Backup.enabled && cs->m_Backup.format == BACKUP_FORMAT::INCREMENTAL;
128 } );
129 RegisterUIUpdateHandler( historyItem->GetId(), historyCond );
130
131 fileMenu->AppendSeparator();
132 fileMenu->Add( SCH_ACTIONS::schematicSetup );
133
134 fileMenu->AppendSeparator();
135 fileMenu->Add( ACTIONS::pageSettings );
136 fileMenu->Add( ACTIONS::print );
137 fileMenu->Add( ACTIONS::plot );
138
139 fileMenu->AppendSeparator();
140 fileMenu->AddQuitOrClose( &Kiface(), _( "Schematic Editor" ) );
141
142
143 //-- Edit menu -----------------------------------------------------------
144 //
145 ACTION_MENU* editMenu = new ACTION_MENU( false, selTool );
146
147 editMenu->Add( ACTIONS::undo );
148 editMenu->Add( ACTIONS::redo );
149
150 editMenu->AppendSeparator();
151 editMenu->Add( ACTIONS::cut );
152 editMenu->Add( ACTIONS::copy );
153 editMenu->Add( ACTIONS::copyAsText );
154 editMenu->Add( ACTIONS::paste );
155 editMenu->Add( ACTIONS::pasteSpecial );
156 editMenu->Add( ACTIONS::doDelete );
157
158 editMenu->AppendSeparator();
159 editMenu->Add( ACTIONS::selectAll );
160 editMenu->Add( ACTIONS::unselectAll );
161
162 editMenu->AppendSeparator();
163 editMenu->Add( ACTIONS::find );
164 editMenu->Add( ACTIONS::findAndReplace );
165
166 editMenu->AppendSeparator();
167 editMenu->Add( ACTIONS::deleteTool );
169 editMenu->Add( SCH_ACTIONS::changeSymbols );
170 editMenu->Add( SCH_ACTIONS::editPageNumber );
171
172 ACTION_MENU* submenuAttributes = new ACTION_MENU( false, selTool );
173 submenuAttributes->SetTitle( _( "Attributes" ) );
174
179 submenuAttributes->Add( SCH_ACTIONS::setDNP, ACTION_MENU::CHECK );
180
181 editMenu->Add( submenuAttributes );
182
183 //-- View menu -----------------------------------------------------------
184 //
185 ACTION_MENU* viewMenu = new ACTION_MENU( false, selTool );
186
187 // Show / Hide Panels submenu
188 ACTION_MENU* showHidePanels = new ACTION_MENU( false, selTool );
189 showHidePanels->SetTitle( _( "Panels" ) );
190
192 showHidePanels->Add( ACTIONS::showSearch, ACTION_MENU::CHECK );
194
195 if( ADVANCED_CFG::GetCfg().m_IncrementalConnectivity )
197
198 showHidePanels->Add( SCH_ACTIONS::showDesignBlockPanel, ACTION_MENU::CHECK, _( "Design Blocks" ) );
199 wxMenuItem* remoteSymbolItem = showHidePanels->Add( SCH_ACTIONS::showRemoteSymbolPanel, ACTION_MENU::CHECK, _( "Remote Symbols" ) );
200
201 if( m_remoteSymbolPane && !m_remoteSymbolPane->HasDataSources() )
202 {
203 remoteSymbolItem->Enable( false );
204 remoteSymbolItem->SetHelp( _( "Search signed-in remote symbol providers and download verified libraries." ) );
205 }
206
207 viewMenu->Add( showHidePanels );
208
209 viewMenu->AppendSeparator();
210 viewMenu->Add( ACTIONS::showSymbolBrowser );
211
212 viewMenu->AppendSeparator();
213 viewMenu->Add( ACTIONS::zoomInCenter );
214 viewMenu->Add( ACTIONS::zoomOutCenter );
215 viewMenu->Add( ACTIONS::zoomFitScreen );
216 viewMenu->Add( ACTIONS::zoomFitObjects );
217 viewMenu->Add( ACTIONS::zoomFitSelection );
218 viewMenu->Add( ACTIONS::zoomTool );
219 viewMenu->Add( ACTIONS::zoomRedraw );
220
221 viewMenu->AppendSeparator();
222 viewMenu->Add( SCH_ACTIONS::navigateBack );
223 viewMenu->Add( SCH_ACTIONS::navigateUp );
226 viewMenu->Add( SCH_ACTIONS::navigateNext );
227
228
229
230 viewMenu->AppendSeparator();
241
242#ifdef __APPLE__
243 viewMenu->AppendSeparator();
244#endif
245
246 //-- Place menu -----------------------------------------------------------
247 //
248 ACTION_MENU* placeMenu = new ACTION_MENU( false, selTool );
249
250 placeMenu->Add( SCH_ACTIONS::placeSymbol );
251 placeMenu->Add( SCH_ACTIONS::placePower );
252 placeMenu->Add( SCH_ACTIONS::drawWire );
253 placeMenu->Add( SCH_ACTIONS::drawBus );
255 placeMenu->Add( SCH_ACTIONS::placeNoConnect );
256 placeMenu->Add( SCH_ACTIONS::placeJunction );
257 placeMenu->Add( SCH_ACTIONS::placeLabel );
259 placeMenu->Add( SCH_ACTIONS::placeClassLabel );
260 placeMenu->Add( SCH_ACTIONS::drawRuleArea );
261
262 placeMenu->AppendSeparator();
263 placeMenu->Add( SCH_ACTIONS::placeHierLabel );
264 placeMenu->Add( SCH_ACTIONS::drawSheet );
265 placeMenu->Add( SCH_ACTIONS::placeSheetPin );
267 placeMenu->Add( SCH_ACTIONS::importSheet );
268
269 placeMenu->AppendSeparator();
271 placeMenu->Add( SCH_ACTIONS::drawTextBox );
272 placeMenu->Add( SCH_ACTIONS::drawTable );
273 placeMenu->Add( SCH_ACTIONS::drawRectangle );
274 placeMenu->Add( SCH_ACTIONS::drawCircle );
275 placeMenu->Add( SCH_ACTIONS::drawEllipse );
276 placeMenu->Add( SCH_ACTIONS::drawEllipseArc );
277 placeMenu->Add( SCH_ACTIONS::drawArc );
278 placeMenu->Add( SCH_ACTIONS::drawBezier );
279 placeMenu->Add( SCH_ACTIONS::drawLines );
280 placeMenu->Add( SCH_ACTIONS::placeImage );
281
282
283 //-- Inspect menu -----------------------------------------------
284 //
285 ACTION_MENU* inspectMenu = new ACTION_MENU( false, selTool );
286
287 inspectMenu->Add( SCH_ACTIONS::showBusSyntaxHelp );
288
289 inspectMenu->AppendSeparator();
290 inspectMenu->Add( SCH_ACTIONS::runERC );
291 inspectMenu->Add( ACTIONS::prevMarker );
292 inspectMenu->Add( ACTIONS::nextMarker );
293 inspectMenu->Add( ACTIONS::excludeMarker );
294
295 inspectMenu->AppendSeparator();
296 inspectMenu->Add( SCH_ACTIONS::diffSymbol );
297
298 inspectMenu->AppendSeparator();
299 inspectMenu->Add( SCH_ACTIONS::showSimulator );
300
301
302 //-- Tools menu -----------------------------------------------
303 //
304 ACTION_MENU* toolsMenu = new ACTION_MENU( false, selTool );
305
306 toolsMenu->Add( ACTIONS::updatePcbFromSchematic )->Enable( !Kiface().IsSingle() );
307 toolsMenu->Add( SCH_ACTIONS::showPcbNew );
308
309 if( !Kiface().IsSingle() )
310 toolsMenu->Add( ACTIONS::showProjectManager );
311
312 toolsMenu->Add( ACTIONS::showCalculatorTools );
313
314 toolsMenu->AppendSeparator();
315 toolsMenu->Add( ACTIONS::showSymbolEditor );
316 toolsMenu->Add( SCH_ACTIONS::updateSymbols );
317
318 toolsMenu->AppendSeparator();
319 toolsMenu->Add( SCH_ACTIONS::rescueSymbols );
320 toolsMenu->Add( SCH_ACTIONS::remapSymbols );
321
322 toolsMenu->AppendSeparator();
325
326 toolsMenu->AppendSeparator();
327 toolsMenu->Add( SCH_ACTIONS::annotate );
329
330 toolsMenu->AppendSeparator();
332 toolsMenu->Add( SCH_ACTIONS::generateBOM );
334
335 toolsMenu->AppendSeparator();
336 toolsMenu->Add( ACTIONS::updateSchematicFromPcb )->Enable( !Kiface().IsSingle() );
337
338 toolsMenu->AppendSeparator();
339 toolsMenu->Add( SCH_ACTIONS::createNetChain );
340
341 toolsMenu->AppendSeparator();
342 ACTION_MENU* submenuVariants = new ACTION_MENU( false, selTool );
343 submenuVariants->SetTitle( _( "Variants" ) );
344 submenuVariants->Add( SCH_ACTIONS::addVariant );
345 submenuVariants->Add( SCH_ACTIONS::removeVariant );
346 submenuVariants->Add( SCH_ACTIONS::editVariantDescription );
347 toolsMenu->Add( submenuVariants );
348
349 toolsMenu->AppendSeparator();
350 toolsMenu->Add( ACTIONS::pluginsReload );
351
352 //-- Preferences menu -----------------------------------------------
353 //
354 ACTION_MENU* prefsMenu = new ACTION_MENU( false, selTool );
355
356 prefsMenu->Add( ACTIONS::configurePaths );
357 prefsMenu->Add( ACTIONS::showSymbolLibTable );
359 prefsMenu->Add( ACTIONS::openPreferences );
360
361 prefsMenu->AppendSeparator();
362 AddMenuLanguageList( prefsMenu, selTool );
363
364
365 //-- Menubar -------------------------------------------------------------
366 //
367 menuBar->Append( fileMenu, _( "&File" ) );
368 menuBar->Append( editMenu, _( "&Edit" ) );
369 menuBar->Append( viewMenu, _( "&View" ) );
370 menuBar->Append( placeMenu, _( "&Place" ) );
371 menuBar->Append( inspectMenu, _( "&Inspect" ) );
372 menuBar->Append( toolsMenu, _( "&Tools" ) );
373 menuBar->Append( prefsMenu, _( "P&references" ) );
374 AddStandardHelpMenu( menuBar );
375
376 SetMenuBar( menuBar );
377 delete oldMenuBar;
378}
KIFACE_BASE & Kiface()
Global KIFACE_BASE "get" accessor.
static TOOL_ACTION showCalculatorTools
Definition actions.h:259
static TOOL_ACTION updatePcbFromSchematic
Definition actions.h:260
static TOOL_ACTION paste
Definition actions.h:76
static TOOL_ACTION excludeMarker
Definition actions.h:125
static TOOL_ACTION nextMarker
Definition actions.h:124
static TOOL_ACTION zoomRedraw
Definition actions.h:128
static TOOL_ACTION unselectAll
Definition actions.h:79
static TOOL_ACTION revert
Definition actions.h:58
static TOOL_ACTION zoomOutCenter
Definition actions.h:132
static TOOL_ACTION saveAs
Definition actions.h:55
static TOOL_ACTION copy
Definition actions.h:74
static TOOL_ACTION pluginsReload
Definition actions.h:290
static TOOL_ACTION showSymbolLibTable
Definition actions.h:278
static TOOL_ACTION showSymbolEditor
Definition actions.h:256
static TOOL_ACTION showSymbolBrowser
Definition actions.h:255
static TOOL_ACTION pasteSpecial
Definition actions.h:77
static TOOL_ACTION zoomFitSelection
Definition actions.h:140
static TOOL_ACTION findAndReplace
Definition actions.h:114
static TOOL_ACTION openPreferences
Definition actions.h:276
static TOOL_ACTION plot
Definition actions.h:61
static TOOL_ACTION open
Definition actions.h:53
static TOOL_ACTION pageSettings
Definition actions.h:59
static TOOL_ACTION showSearch
Definition actions.h:112
static TOOL_ACTION undo
Definition actions.h:71
static TOOL_ACTION prevMarker
Definition actions.h:123
static TOOL_ACTION doDelete
Definition actions.h:81
static TOOL_ACTION save
Definition actions.h:54
static TOOL_ACTION zoomFitScreen
Definition actions.h:138
static TOOL_ACTION redo
Definition actions.h:72
static TOOL_ACTION deleteTool
Definition actions.h:82
static TOOL_ACTION zoomTool
Definition actions.h:142
static TOOL_ACTION updateSchematicFromPcb
Definition actions.h:261
static TOOL_ACTION showDesignBlockLibTable
Definition actions.h:280
static TOOL_ACTION print
Definition actions.h:60
static TOOL_ACTION showProperties
Definition actions.h:262
static TOOL_ACTION doNew
Definition actions.h:50
static TOOL_ACTION zoomFitObjects
Definition actions.h:139
static TOOL_ACTION zoomInCenter
Definition actions.h:131
static TOOL_ACTION cut
Definition actions.h:73
static TOOL_ACTION configurePaths
Definition actions.h:277
static TOOL_ACTION showProjectManager
Definition actions.h:253
static TOOL_ACTION copyAsText
Definition actions.h:75
static TOOL_ACTION selectAll
Definition actions.h:78
static TOOL_ACTION find
Definition actions.h:113
Define the structure of a menu based on ACTIONs.
Definition action_menu.h:43
void AddQuitOrClose(KIFACE_BASE *aKiface, wxString aAppname="")
Add either a standard Quit or Close item to the menu.
static constexpr bool CHECK
ACTION_MENU * Clone() const
Create a deep, recursive copy of this ACTION_MENU.
void SetTitle(const wxString &aTitle) override
Set title for the menu.
static constexpr bool NORMAL
void SetIcon(BITMAPS aIcon)
Assign an icon for the entry.
wxMenuItem * Add(const wxString &aLabel, int aId, BITMAPS aIcon)
Add a wxWidgets-style entry to the menu.
static const ADVANCED_CFG & GetCfg()
Get the singleton instance's config, which is shared by all consumers.
AUTO_BACKUP m_Backup
void AddMenuLanguageList(ACTION_MENU *aMasterMenu, TOOL_INTERACTIVE *aControlTool)
Create a menu list for language choice, and add it as submenu to MasterMenu.
FILE_HISTORY & GetFileHistory()
Get the frame's main file history.
virtual void RegisterUIUpdateHandler(int aID, const ACTION_CONDITIONS &aConditions) override
Register a UI update handler for the control with ID aID.
void AddStandardHelpMenu(wxMenuBar *aMenuBar)
Add the standard KiCad help menu to the menubar.
This class implements a file history object to store a list of files, that can then be added to a men...
static SELECTION_CONDITION FileHistoryNotEmpty(const FILE_HISTORY &aHistory)
Create a SELECTION_CONDITION that can be used to enable a menu item when the file history has items i...
void UpdateClearText(wxMenu *aMenu, wxString aClearText)
Update the text displayed on the menu item that clears the entire menu.
void AddFilesToMenu() override
Add the files to all registered menus.
virtual COMMON_SETTINGS * GetCommonSettings() const
Definition pgm_base.cpp:528
static TOOL_ACTION showPcbNew
static TOOL_ACTION placeClassLabel
Definition sch_actions.h:75
static TOOL_ACTION placeSheetPin
Definition sch_actions.h:81
static TOOL_ACTION createNetChain
static TOOL_ACTION compareSchematicWithHistory
static TOOL_ACTION setExcludeFromBOM
static TOOL_ACTION assignFootprints
static TOOL_ACTION toggleOPCurrents
static TOOL_ACTION showBusSyntaxHelp
static TOOL_ACTION placeGlobalLabel
Definition sch_actions.h:76
static TOOL_ACTION removeVariant
static TOOL_ACTION editSymbolFields
static TOOL_ACTION drawEllipseArc
Definition sch_actions.h:94
static TOOL_ACTION importFPAssignments
static TOOL_ACTION changeSymbols
static TOOL_ACTION drawTextBox
Definition sch_actions.h:89
static TOOL_ACTION syncAllSheetsPins
Definition sch_actions.h:87
static TOOL_ACTION drawArc
Definition sch_actions.h:95
static TOOL_ACTION drawSheet
Definition sch_actions.h:78
static TOOL_ACTION toggleERCWarnings
static TOOL_ACTION navigateBack
static TOOL_ACTION editVariantDescription
static TOOL_ACTION schematicSetup
static TOOL_ACTION toggleDirectiveLabels
static TOOL_ACTION toggleHiddenFields
static TOOL_ACTION drawRectangle
Definition sch_actions.h:91
static TOOL_ACTION drawLines
Definition sch_actions.h:97
static TOOL_ACTION saveCurrSheetCopyAs
Definition sch_actions.h:39
static TOOL_ACTION placeHierLabel
Definition sch_actions.h:77
static TOOL_ACTION drawEllipse
Definition sch_actions.h:93
static TOOL_ACTION placeLabel
Definition sch_actions.h:74
static TOOL_ACTION drawCircle
Definition sch_actions.h:92
static TOOL_ACTION navigateNext
static TOOL_ACTION importGraphics
static TOOL_ACTION placeBusWireEntry
Definition sch_actions.h:73
static TOOL_ACTION showRemoteSymbolPanel
static TOOL_ACTION drawBezier
Definition sch_actions.h:96
static TOOL_ACTION drawWire
Definition sch_actions.h:68
static TOOL_ACTION compareSchematicWithFile
static TOOL_ACTION remapSymbols
static TOOL_ACTION editSymbolLibraryLinks
static TOOL_ACTION importSheet
Definition sch_actions.h:83
static TOOL_ACTION generateBOM
static TOOL_ACTION showHierarchy
static TOOL_ACTION setExcludeFromSim
static TOOL_ACTION showNetNavigator
static TOOL_ACTION placeJunction
Definition sch_actions.h:72
static TOOL_ACTION setDNP
static TOOL_ACTION markSimExclusions
static TOOL_ACTION drawRuleArea
static TOOL_ACTION placeSymbol
Definition sch_actions.h:62
static TOOL_ACTION placeImage
Definition sch_actions.h:98
static TOOL_ACTION navigateForward
static TOOL_ACTION toggleERCErrors
static TOOL_ACTION incrementAnnotations
static TOOL_ACTION navigatePrevious
static TOOL_ACTION setExcludeFromPosFiles
static TOOL_ACTION rescueSymbols
static TOOL_ACTION generateBOMLegacy
static TOOL_ACTION showSimulator
static TOOL_ACTION toggleOPVoltages
static TOOL_ACTION drawBus
Definition sch_actions.h:69
static TOOL_ACTION runERC
Inspection and Editing.
static TOOL_ACTION drawTable
Definition sch_actions.h:90
static TOOL_ACTION placeSchematicText
Definition sch_actions.h:88
static TOOL_ACTION annotate
static TOOL_ACTION showDesignBlockPanel
static TOOL_ACTION updateSymbols
static TOOL_ACTION togglePinAltIcons
static TOOL_ACTION toggleERCExclusions
static TOOL_ACTION editTextAndGraphics
static TOOL_ACTION exportNetlist
static TOOL_ACTION placeNoConnect
Definition sch_actions.h:71
static TOOL_ACTION editPageNumber
static TOOL_ACTION drawSheetOnClipboard
static TOOL_ACTION exportSymbolsToLibrary
static TOOL_ACTION toggleHiddenPins
static TOOL_ACTION setExcludeFromBoard
static TOOL_ACTION addVariant
static TOOL_ACTION importNonKicadSchematic
static TOOL_ACTION diffSymbol
static TOOL_ACTION placePower
Definition sch_actions.h:64
static TOOL_ACTION navigateUp
void doReCreateMenuBar() override
PANEL_REMOTE_SYMBOL * m_remoteSymbolPane
TOOL_MANAGER * m_toolManager
Wrapper around a wxMenuBar object that prevents the accelerator table from being used.
Definition wx_menubar.h:43
@ INCREMENTAL
Git-based local history (default)
#define _(s)
PGM_BASE & Pgm()
The global program "get" accessor.
see class PGM_BASE
Functors that can be used to figure out how the action controls should be displayed in the UI and if ...
ACTION_CONDITIONS & Enable(const SELECTION_CONDITION &aCondition)
BACKUP_FORMAT format
Backup format (incremental git history vs zip archives)
bool enabled
Automatically back up the project when files are saved.