KiCad PCB EDA Suite
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
actions.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-2023 CERN
5 * Copyright The KiCad Developers, see AUTHORS.txt for contributors.
6 *
7 * This program is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License
9 * as published by the Free Software Foundation; either version 2
10 * of the License, or (at your option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, you may find one here:
19 * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
20 * or you may search the http://www.gnu.org website for the version 2 license,
21 * or you may write to the Free Software Foundation, Inc.,
22 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
23 */
24
25#include <bitmaps.h>
26#include <common.h>
27#include <eda_units.h>
28#include <frame_type.h>
29#include <tool/actions.h>
30#include <tool/tool_action.h>
31#include <tool/tool_event.h>
32
33// Actions, being statically-defined, require specialized I18N handling. We continue to
34// use the _() macro so that string harvesting by the I18N framework doesn't have to be
35// specialized, but we don't translate on initialization and instead do it in the getters.
36
37#undef _
38#define _(s) s
39
41 .Name( "common.Control.new" )
42 .Scope( AS_GLOBAL )
43 .DefaultHotkey( MD_CTRL + 'N' )
44 .LegacyHotkeyName( "New" )
45 .FriendlyName( _( "New..." ) )
46 .Tooltip( _( "Create a new document in the editor" ) )
47 .Icon( BITMAPS::new_generic ) );
48
50 .Name( "common.Control.newLibrary" )
51 .Scope( AS_GLOBAL )
52 .FriendlyName( _( "New Library..." ) )
53 .Tooltip( _( "Create a new library folder" ) )
54 .Icon( BITMAPS::new_library ) );
55
57 .Name( "common.Control.addLibrary" )
58 .Scope( AS_GLOBAL )
59 .FriendlyName( _( "Add Library..." ) )
60 .Tooltip( _( "Add an existing library folder" ) )
61 .Icon( BITMAPS::add_library ) );
62
64 .Name( "common.Control.open" )
65 .Scope( AS_GLOBAL )
66 .DefaultHotkey( MD_CTRL + 'O' )
67 .LegacyHotkeyName( "Open" )
68 .FriendlyName( _( "Open..." ) )
69 .Tooltip( _( "Open existing document" ) )
70 .Icon( BITMAPS::directory_open ) );
71
73 .Name( "common.Control.openWithTextEditor" )
74 .Scope( AS_GLOBAL )
75 .FriendlyName( _( "Edit in a Text Editor..." ) )
76 .Tooltip( _( "Open a library file with a text editor" ) )
77 .Icon( BITMAPS::editor ) );
78
80 .Name( "common.Control.openDirectory" )
81 .Scope( AS_GLOBAL )
82 .FriendlyName( _( "Open in file explorer..." ) )
83 .Tooltip( _( "Open a library file with system file explorer" ) )
85
87 .Name( "common.Control.save" )
88 .Scope( AS_GLOBAL )
89 .DefaultHotkey( MD_CTRL + 'S' )
90 .LegacyHotkeyName( "Save" )
91 .FriendlyName( _( "Save" ) )
92 .Tooltip( _( "Save changes" ) )
93 .Icon( BITMAPS::save ) );
94
96 .Name( "common.Control.saveAs" )
97 .Scope( AS_GLOBAL )
98 .DefaultHotkey( MD_CTRL + MD_SHIFT + 'S' )
99 .LegacyHotkeyName( "Save As" )
100 .FriendlyName( _( "Save As..." ) )
101 .Tooltip( _( "Save current document to another location" ) )
102 .Icon( BITMAPS::save_as ) );
103
105 .Name( "common.Control.saveCopy" )
106 .Scope( AS_GLOBAL )
107 .FriendlyName( _( "Save a Copy..." ) )
108 .Tooltip( _( "Save a copy of the current document to another location" ) )
109 .Icon( BITMAPS::save_as ) );
110
112 .Name( "common.Control.saveAll" )
113 .Scope( AS_GLOBAL )
114 .FriendlyName( _( "Save All" ) )
115 .Tooltip( _( "Save all changes" ) )
116 .Icon( BITMAPS::save ) );
117
119 .Name( "common.Control.revert" )
120 .Scope( AS_GLOBAL )
121 .FriendlyName( _( "Revert" ) )
122 .Tooltip( _( "Throw away changes" ) )
124 );
125
127 .Name( "common.Control.pageSettings" )
128 .Scope( AS_GLOBAL )
129 .FriendlyName( _( "Page Settings..." ) )
130 .Tooltip( _( "Settings for paper size and title block info" ) )
131 .Icon( BITMAPS::sheetset ) );
132
134 .Name( "common.Control.print" )
135 .Scope( AS_GLOBAL )
136 .DefaultHotkey( MD_CTRL + 'P' )
137 .LegacyHotkeyName( "Print" )
138 .FriendlyName( _( "Print..." ) )
139 .Icon( BITMAPS::print_button ) );
140
142 .Name( "common.Control.plot" )
143 .Scope( AS_GLOBAL )
144 .FriendlyName( _( "Plot..." ) )
145 .Icon( BITMAPS::plot ) );
146
148 .Name( "common.Control.quit" )
149 .Scope( AS_GLOBAL )
150 .FriendlyName( _( "Quit" ) )
151 .Tooltip( _( "Close the current editor" ) )
152 .Icon( BITMAPS::exit ) );
153
154// Generic Edit Actions
156 .Name( "common.Interactive.cancel" )
157 .Scope( AS_GLOBAL )
158 // ESC key is handled in the dispatcher
159 .FriendlyName( _( "Cancel" ) )
160 .Tooltip( _( "Cancel current tool" ) )
161 .Icon( BITMAPS::cancel )
162 .Flags( AF_NONE ) );
163
165 .Name( "common.Interactive.finish" )
166 .Scope( AS_GLOBAL )
167 .DefaultHotkey( WXK_END )
168 .FriendlyName( _( "Finish" ) )
169 .Tooltip( _( "Finish current tool" ) )
170 .Icon( BITMAPS::checked_ok )
171 .ToolbarState( TOOLBAR_STATE::HIDDEN )
172 .Flags( AF_NONE ) );
173
175 .Name( "common.Control.showContextMenu" )
176 .Scope( AS_GLOBAL )
177 .FriendlyName( _( "Show Context Menu" ) )
178 .Tooltip( _( "Perform the right-mouse-button action" ) )
179 .Flags( AF_NONE )
180 .Parameter( CURSOR_RIGHT_CLICK )
181 .ToolbarState( TOOLBAR_STATE::HIDDEN ) );
182
184 .Name( "common.Interactive.updateMenu" )
185 .ToolbarState( TOOLBAR_STATE::HIDDEN )
186 .Scope( AS_GLOBAL ) );
187
189 .Name( "common.Interactive.undo" )
190 .Scope( AS_GLOBAL )
191 .DefaultHotkey( MD_CTRL + 'Z' )
192 .LegacyHotkeyName( "Undo" )
193 .FriendlyName( _( "Undo" ) )
194 .Icon( BITMAPS::undo ) );
195
197 .Name( "common.Interactive.redo" )
198 .Scope( AS_GLOBAL )
199#if defined( __WXMAC__ )
200 .DefaultHotkey( MD_CTRL + MD_SHIFT + 'Z' )
201#else
202 .DefaultHotkey( MD_CTRL + 'Y' )
203#endif
204 .LegacyHotkeyName( "Redo" )
205 .FriendlyName( _( "Redo" ) )
206 .Icon( BITMAPS::redo ) );
207
208// The following actions need to have a hard-coded UI ID using a wx-specific ID
209// to fix things like search controls in standard file dialogs. If wxWidgets
210// doesn't find these specific IDs somewhere in the menus then it won't enable
211// cut/copy/paste.
213 .Name( "common.Interactive.cut" )
214 .Scope( AS_GLOBAL )
215 .DefaultHotkey( MD_CTRL + 'X' )
216 .LegacyHotkeyName( "Cut" )
217 .FriendlyName( _( "Cut" ) )
218 .Tooltip( _( "Cut selected item(s) to clipboard" ) )
219 .Icon( BITMAPS::cut )
220 .Flags( AF_NONE )
221 .UIId( wxID_CUT ) );
222
224 .Name( "common.Interactive.copy" )
225 .Scope( AS_GLOBAL )
226 .DefaultHotkey( MD_CTRL + 'C' )
227 .LegacyHotkeyName( "Copy" )
228 .FriendlyName( _( "Copy" ) )
229 .Tooltip( _( "Copy selected item(s) to clipboard" ) )
230 .Icon( BITMAPS::copy )
231 .Flags( AF_NONE )
232 .UIId( wxID_COPY ) );
233
235 .Name( "common.Interactive.copyAsText" )
236 .Scope( AS_GLOBAL )
237 .DefaultHotkey( MD_CTRL + MD_SHIFT + 'C' )
238 .FriendlyName( _( "Copy as Text" ) )
239 .Tooltip( _( "Copy selected item(s) to clipboard as text" ) )
240 .Icon( BITMAPS::copy )
241 .Flags( AF_NONE ) );
242
244 .Name( "common.Interactive.paste" )
245 .Scope( AS_GLOBAL )
246 .DefaultHotkey( MD_CTRL + 'V' )
247 .LegacyHotkeyName( "Paste" )
248 .FriendlyName( _( "Paste" ) )
249 .Tooltip( _( "Paste item(s) from clipboard" ) )
250 .Icon( BITMAPS::paste )
251 .Flags( AF_NONE )
252 .UIId( wxID_PASTE ) );
253
255 .Name( "common.Interactive.selectAll" )
256 .Scope( AS_GLOBAL )
257 .DefaultHotkey( MD_CTRL + 'A' )
258 .FriendlyName( _( "Select All" ) )
259 .Tooltip( _( "Select all items on screen" ) ) );
260
262 .Name( "common.Interactive.unselectAll" )
263 .Scope( AS_GLOBAL )
264 .DefaultHotkey( MD_CTRL + MD_SHIFT + 'A' )
265 .FriendlyName( _( "Unselect All" ) )
266 .Tooltip( _( "Unselect all items on screen" ) ) );
267
269 .Name( "common.Interactive.pasteSpecial" )
270 .Scope( AS_GLOBAL )
271 .DefaultHotkey( MD_CTRL + MD_SHIFT + 'V' )
272 .FriendlyName( _( "Paste Special..." ) )
273 .Tooltip( _( "Paste item(s) from clipboard with options" ) )
274 .Icon( BITMAPS::paste_special ) );
275
277 .Name( "common.Interactive.duplicate" )
278 .Scope( AS_GLOBAL )
279 .DefaultHotkey( MD_CTRL + 'D' )
280 .LegacyHotkeyName( "Duplicate" )
281 .FriendlyName( _( "Duplicate" ) )
282 .Tooltip( _( "Duplicates the selected item(s)" ) )
283 .Icon( BITMAPS::duplicate ) );
284
286 .Name( "common.Interactive.delete" )
287 .Scope( AS_GLOBAL )
288#if defined( __WXMAC__ )
289 .DefaultHotkey( WXK_BACK )
290#else
291 .DefaultHotkey( WXK_DELETE )
292#endif
293 .LegacyHotkeyName( "Delete Item" )
294 .FriendlyName( _( "Delete" ) )
295 .Tooltip( _( "Delete selected item(s)" ) ) // differentiation from deleteTool, below
296 .Icon( BITMAPS::trash )
297 .Parameter( ACTIONS::REMOVE_FLAGS::NORMAL ) );
298
300 .Name( "common.Interactive.deleteTool" )
301 .Scope( AS_GLOBAL )
302 .FriendlyName( _( "Interactive Delete Tool" ) )
303 .Tooltip( _( "Delete clicked items" ) )
304 .ToolbarState( TOOLBAR_STATE::TOGGLE )
306 .Flags( AF_ACTIVATE ) );
307
309 .Name( "common.Control.leftJustify" )
310 .Scope( AS_GLOBAL )
311 .FriendlyName( _( "Left Justify" ) )
312 .Tooltip( _( "Left-justify fields and text items" ) )
313 .Icon( BITMAPS::text_align_left ) );
314
316 .Name( "common.Control.centerJustify" )
317 .Scope( AS_GLOBAL )
318 .FriendlyName( _( "Center Justify" ) )
319 .Tooltip( _( "Center-justify fields and text items" ) )
321
323 .Name( "common.Control.rightJustify" )
324 .Scope( AS_GLOBAL )
325 .FriendlyName( _( "Right Justify" ) )
326 .Tooltip( _( "Right-justify fields and text items" ) )
327 .Icon( BITMAPS::text_align_right ) );
328
330 .Name( "common.Control.expandAll" )
331 .Scope( AS_GLOBAL )
332 .FriendlyName( _( "Expand All" ) )
333 .Icon( BITMAPS::up ) ); // JEY TODO: need icon
334
336 .Name( "common.Control.collapseAll" )
337 .Scope( AS_GLOBAL )
338 .FriendlyName( _( "Collapse All" ) )
339 .Icon( BITMAPS::down ) ); // JEY TODO: need icon
340
341// This is the generic increment action, and will need the parameter
342// to be filled in by the event producer.
344 .Name( "eeschema.Interactive.increment" )
345 .Scope( AS_GLOBAL )
346 .FriendlyName( _( "Increment" ) )
347 .Tooltip( _( "Increment the selected item(s)" ) ) );
348
350 .Name( "eeschema.Interactive.incrementPrimary" )
351 .Scope( AS_GLOBAL )
352 .FriendlyName( _( "Increment Primary" ) )
353 .Tooltip( _( "Increment the primary field of the selected item(s)" ) )
354 .Parameter( ACTIONS::INCREMENT{ 1, 0 } ) );
355
357 .Name( "eeschema.Interactive.decrementPrimary" )
358 .Scope( AS_GLOBAL )
359 .FriendlyName( _( "Decrement Primary" ) )
360 .Tooltip( _( "Decrement the primary field of the selected item(s)" ) )
361 .Parameter( ACTIONS::INCREMENT{ -1, 0 } ) );
362
364 .Name( "eeschema.Interactive.incrementSecondary" )
365 .Scope( AS_GLOBAL )
366 .FriendlyName( _( "Increment Secondary" ) )
367 .Tooltip( _( "Increment the secondary field of the selected item(s)" ) )
368 .Parameter( ACTIONS::INCREMENT{ 1, 1 } ) );
369
371 .Name( "eeschema.Interactive.decrementSecondary" )
372 .Scope( AS_GLOBAL )
373 .FriendlyName( _( "Decrement Secondary" ) )
374 .Tooltip( _( "Decrement the secondary field of the selected item(s)" ) )
375 .Parameter( ACTIONS::INCREMENT{ -1, 1 } ) );
376
378 .Name( "common.InteractiveSelection.SelectColumns" )
379 .Scope( AS_GLOBAL )
380 .FriendlyName( _( "Select Column(s)" ) )
381 .Tooltip( _( "Select complete column(s) containing the current selected cell(s)" ) )
383
385 .Name( "common.InteractiveSelection.Rows" )
386 .Scope( AS_GLOBAL )
387 .FriendlyName( _( "Select Row(s)" ) )
388 .Tooltip( _( "Select complete row(s) containing the current selected cell(s)" ) )
389 .Icon( BITMAPS::table_select_row ) );
390
392 .Name( "common.InteractiveSelection.SelectTable" )
393 .Scope( AS_GLOBAL )
394 .FriendlyName( _( "Select Table" ) )
395 .Tooltip( _( "Select parent table of selected cell(s)" ) )
396 .Icon( BITMAPS::table_select ) );
397
399 .Name( "common.TableEditor.addRowAbove" )
400 .Scope( AS_GLOBAL )
401 .FriendlyName( _( "Add Row Above" ) )
402 .Tooltip( _( "Insert a new table row above the selected cell(s)" ) )
404
406 .Name( "common.TableEditor.addRowBelow" )
407 .Scope( AS_GLOBAL )
408 .FriendlyName( _( "Add Row Below" ) )
409 .Tooltip( _( "Insert a new table row below the selected cell(s)" ) )
411
413 .Name( "common.TableEditor.addColBefore" )
414 .Scope( AS_GLOBAL )
415 .FriendlyName( _( "Add Column Before" ) )
416 .Tooltip( _( "Insert a new table column before the selected cell(s)" ) )
418
420 .Name( "common.TableEditor.addColAfter" )
421 .Scope( AS_GLOBAL )
422 .FriendlyName( _( "Add Column After" ) )
423 .Tooltip( _( "Insert a new table column after the selected cell(s)" ) )
425
427 .Name( "common.TableEditor.deleteRows" )
428 .Scope( AS_GLOBAL )
429 .FriendlyName( _( "Delete Row(s)" ) )
430 .Tooltip( _( "Delete rows containing the currently selected cell(s)" ) )
431 .Icon( BITMAPS::table_delete_row ) );
432
434 .Name( "common.TableEditor.deleteColumns" )
435 .Scope( AS_GLOBAL )
436 .FriendlyName( _( "Delete Column(s)" ) )
437 .Tooltip( _( "Delete columns containing the currently selected cell(s)" ) )
439
441 .Name( "common.TableEditor.mergeCells" )
442 .Scope( AS_GLOBAL )
443 .FriendlyName( _( "Merge Cells" ) )
444 .Tooltip( _( "Turn selected table cells into a single cell" ) )
445 .Icon( BITMAPS::table ) ); // JEY TODO: need icon
446
448 .Name( "common.TableEditor.unmergeCell" )
449 .Scope( AS_GLOBAL )
450 .FriendlyName( _( "Unmerge Cells" ) )
451 .Tooltip( _( "Turn merged table cells back into separate cells." ) )
452 .Icon( BITMAPS::table ) ); // JEY TODO: need icon
453
455 .Name( "pcbnew.TableEditor.editTable" )
456 .Scope( AS_GLOBAL )
457 .DefaultHotkey( MD_CTRL + 'E' )
458 .FriendlyName( _( "Edit Table..." ) )
459 .Icon( BITMAPS::table_edit ) );
460
462 .Name( "common.Control.activatePointEditor" )
463 .ToolbarState( TOOLBAR_STATE::HIDDEN )
464 .Scope( AS_GLOBAL ) );
465
467 .Name( "common.Interactive.cycleArcEditMode" )
468 .Scope( AS_GLOBAL )
469 .DefaultHotkey( MD_CTRL + ' ' )
470 .FriendlyName( _( "Cycle Arc Editing Mode" ) )
471 .Tooltip( _( "Switch to a different method of editing arcs" ) ) );
472
474 .Name( "common.Interactive.search" )
475 .Scope( AS_GLOBAL )
476 .DefaultHotkey( MD_CTRL + 'G' )
477 .LegacyHotkeyName( "Search" )
478 .FriendlyName( _( "Search" ) )
479 .Tooltip( _( "Show/hide the search panel" ) )
480 .Icon( BITMAPS::find ) );
481
483 .Name( "common.Interactive.find" )
484 .Scope( AS_GLOBAL )
485 .DefaultHotkey( MD_CTRL + 'F' )
486 .LegacyHotkeyName( "Find" )
487 .FriendlyName( _( "Find" ) )
488 .Icon( BITMAPS::find ) );
489
491 .Name( "common.Interactive.findAndReplace" )
492 .Scope( AS_GLOBAL )
493 .DefaultHotkey( MD_CTRL + MD_ALT + 'F' )
494 .LegacyHotkeyName( "Find and Replace" )
495 .FriendlyName( _( "Find and Replace" ) )
496 .Icon( BITMAPS::find_replace ) );
497
499 .Name( "common.Interactive.findNext" )
500 .Scope( AS_GLOBAL )
501 .DefaultHotkey( WXK_F3 )
502 .LegacyHotkeyName( "Find Next" )
503 .FriendlyName( _( "Find Next" ) )
504 .Icon( BITMAPS::find ) );
505
507 .Name( "common.Interactive.findPrevious" )
508 .Scope( AS_GLOBAL )
509 .DefaultHotkey( MD_SHIFT + static_cast<int>( WXK_F3 ) )
510 .LegacyHotkeyName( "Find Previous" )
511 .FriendlyName( _( "Find Previous" ) )
512 .Icon( BITMAPS::find ) );
513
515 .Name( "common.Interactive.findNextMarker" )
516 .Scope( AS_GLOBAL )
517 .DefaultHotkey( MD_CTRL + MD_SHIFT + static_cast<int>( WXK_F3 ) )
518 .LegacyHotkeyName( "Find Next Marker" )
519 .FriendlyName( _( "Find Next Marker" ) )
520 .Icon( BITMAPS::find ) );
521
523 .Name( "common.Interactive.replaceAndFindNext" )
524 .Scope( AS_GLOBAL )
525 .FriendlyName( _( "Replace and Find Next" ) )
526 .Icon( BITMAPS::find_replace ) );
527
529 .Name( "common.Interactive.replaceAll" )
530 .Scope( AS_GLOBAL )
531 .FriendlyName( _( "Replace All" ) )
532 .Icon( BITMAPS::find_replace ) );
533
535 .Name( "common.Control.updateFind" )
536 .ToolbarState( TOOLBAR_STATE::HIDDEN )
537 .Scope( AS_GLOBAL ) );
538
539
540// Marker Controls
542 .Name( "common.Checker.prevMarker" )
543 .Scope( AS_GLOBAL )
544 .FriendlyName( _( "Previous Marker" ) )
545 .Icon( BITMAPS::marker_previous ) );
546
548 .Name( "common.Checker.nextMarker" )
549 .Scope( AS_GLOBAL )
550 .FriendlyName( _( "Next Marker" ) )
551 .Icon( BITMAPS::marker_next ) );
552
554 .Name( "common.Checker.excludeMarker" )
555 .Scope( AS_GLOBAL )
556 .FriendlyName( _( "Exclude Marker" ) )
557 .Tooltip( _( "Mark current violation in Checker window as an exclusion" ) )
558 .Icon( BITMAPS::marker_exclude ) );
559
560// View Controls
562 .Name( "common.Control.zoomRedraw" )
563 .Scope( AS_GLOBAL )
564#if defined( __WXMAC__ )
565 .DefaultHotkey( MD_CTRL + 'R' )
566#else
567 .DefaultHotkey( WXK_F5 )
568#endif
569 .LegacyHotkeyName( "Zoom Redraw" )
570 .FriendlyName( _( "Refresh" ) )
571 .Icon( BITMAPS::refresh ) );
572
574 .Name( "common.Control.zoomFitScreen" )
575 .Scope( AS_GLOBAL )
576#if defined( __WXMAC__ )
577 .DefaultHotkey( MD_CTRL + '0' )
578#else
579 .DefaultHotkey( WXK_HOME )
580#endif
581 .LegacyHotkeyName( "Zoom Auto" )
582 .FriendlyName( _( "Zoom to Fit" ) )
583 .Icon( BITMAPS::zoom_fit_in_page ) );
584
586 .Name( "common.Control.zoomFitObjects" )
587 .Scope( AS_GLOBAL )
588 .DefaultHotkey( MD_CTRL + static_cast<int>( WXK_HOME ) )
589 .FriendlyName( _( "Zoom to Objects" ) )
591
593 .Name( "common.Control.zoomFitSelection" )
594 .Scope( AS_GLOBAL )
595 .FriendlyName( _( "Zoom to Selected Objects" ) ) );
596
598 .Name( "common.Control.zoomIn" )
599 .Scope( AS_GLOBAL )
600#if defined( __WXMAC__ )
601 .DefaultHotkey( MD_CTRL + '+' )
602#else
603 .DefaultHotkey( WXK_F1 )
604#endif
605 .LegacyHotkeyName( "Zoom In" )
606 .FriendlyName( _( "Zoom In at Cursor" ) )
607 .Icon( BITMAPS::zoom_in ) );
608
610 .Name( "common.Control.zoomOut" )
611 .Scope( AS_GLOBAL )
612#if defined( __WXMAC__ )
613 .DefaultHotkey( MD_CTRL + '-' )
614#else
615 .DefaultHotkey( WXK_F2 )
616#endif
617 .LegacyHotkeyName( "Zoom Out" )
618 .FriendlyName( _( "Zoom Out at Cursor" ) )
619 .Icon( BITMAPS::zoom_out ) );
620
622 .Name( "common.Control.zoomInCenter" )
623 .Scope( AS_GLOBAL )
624 .FriendlyName( _( "Zoom In" ) )
625 .Icon( BITMAPS::zoom_in ) );
626
628 .Name( "common.Control.zoomOutCenter" )
629 .Scope( AS_GLOBAL )
630 .FriendlyName( _( "Zoom Out" ) )
631 .Icon( BITMAPS::zoom_out ) );
632
634 .Name( "common.Control.zoomInHorizontally" )
635 .Scope( AS_GLOBAL )
636 .FriendlyName( _( "Zoom In Horizontally" ) )
637 .Tooltip( _( "Zoom in horizontally the plot area" ) )
639
641 .Name( "common.Control.zoomOutHorizontally" )
642 .Scope( AS_GLOBAL )
643 .FriendlyName( _( "Zoom Out Horizontally" ) )
644 .Tooltip( _( "Zoom out horizontally the plot area" ) )
646
648 .Name( "common.Control.zoomInVertically" )
649 .Scope( AS_GLOBAL )
650 .FriendlyName( _( "Zoom In Vertically" ) )
651 .Tooltip( _( "Zoom in vertically the plot area" ) )
653
655 .Name( "common.Control.zoomOutVertically" )
656 .Scope( AS_GLOBAL )
657 .FriendlyName( _( "Zoom Out Vertically" ) )
658 .Tooltip( _( "Zoom out vertically the plot area" ) )
660
662 .Name( "common.Control.zoomCenter" )
663 .Scope( AS_GLOBAL )
664 .DefaultHotkey( WXK_F4 )
665 .LegacyHotkeyName( "Zoom Center" )
666 .FriendlyName( _( "Center on Cursor" ) )
668
670 .Name( "common.Control.zoomTool" )
671 .Scope( AS_GLOBAL )
672 .DefaultHotkey( MD_CTRL + static_cast<int>( WXK_F5 ) )
673 .LegacyHotkeyName( "Zoom to Selection" )
674 .FriendlyName( _( "Zoom to Selection" ) )
675 .Icon( BITMAPS::zoom_area )
676 .ToolbarState( { TOOLBAR_STATE::TOGGLE, TOOLBAR_STATE::CANCEL } )
677 .Flags( AF_ACTIVATE ) );
678
680 .Name( "common.Control.undoZoom" )
681 .Scope( AS_GLOBAL )
682 .FriendlyName( _( "Undo Last Zoom" ) )
683 .Tooltip( _( "Return zoom to level prior to last zoom action" ) )
684 .Icon( BITMAPS::undo ) );
685
687 .Name( "common.Control.redoZoom" )
688 .Scope( AS_GLOBAL )
689 .FriendlyName( _( "Redo Last Zoom" ) )
690 .Tooltip( _( "Return zoom to level prior to last zoom undo" ) )
691 .Icon( BITMAPS::redo ) );
692
694 .Name( "common.Control.zoomPreset" )
695 .Scope( AS_GLOBAL )
696 .Parameter<int>( 0 ) ); // Default parameter is the 0th item in the list
697
699 .Name( "common.Control.centerContents" )
700 .Scope( AS_GLOBAL ) );
701
703 .Name( "common.Control.centerSelection" )
704 .Scope( AS_GLOBAL )
705 .FriendlyName( _( "Pan to Center Selected Objects" ) ) );
706
707// Cursor control
709 .Name( "common.Control.cursorUp" )
710 .Scope( AS_GLOBAL )
711 .DefaultHotkey( WXK_UP )
712 .FriendlyName( _( "Cursor Up" ) )
713 .ToolbarState( TOOLBAR_STATE::HIDDEN )
714 .Flags( AF_NONE )
715 .Parameter( CURSOR_UP ) );
716
718 .Name( "common.Control.cursorDown" )
719 .Scope( AS_GLOBAL )
720 .DefaultHotkey( WXK_DOWN )
721 .FriendlyName( _( "Cursor Down" ) )
722 .ToolbarState( TOOLBAR_STATE::HIDDEN )
723 .Flags( AF_NONE )
724 .Parameter( CURSOR_DOWN ) );
725
727 .Name( "common.Control.cursorLeft" )
728 .Scope( AS_GLOBAL )
729 .DefaultHotkey( WXK_LEFT )
730 .FriendlyName( _( "Cursor Left" ) )
731 .ToolbarState( TOOLBAR_STATE::HIDDEN )
732 .Flags( AF_NONE )
733 .Parameter( CURSOR_LEFT ) );
734
736 .Name( "common.Control.cursorRight" )
737 .Scope( AS_GLOBAL )
738 .DefaultHotkey( WXK_RIGHT )
739 .FriendlyName( _( "Cursor Right" ) )
740 .ToolbarState( TOOLBAR_STATE::HIDDEN )
741 .Flags( AF_NONE )
742 .Parameter( CURSOR_RIGHT ) );
743
744
746 .Name( "common.Control.cursorUpFast" )
747 .Scope( AS_GLOBAL )
748 .DefaultHotkey( MD_CTRL + static_cast<int>( WXK_UP ) )
749 .FriendlyName( _( "Cursor Up Fast" ) )
750 .ToolbarState( TOOLBAR_STATE::HIDDEN )
751 .Flags( AF_NONE )
752 .Parameter( CURSOR_UP_FAST ) );
753
755 .Name( "common.Control.cursorDownFast" )
756 .Scope( AS_GLOBAL )
757 .DefaultHotkey( MD_CTRL + static_cast<int>( WXK_DOWN ) )
758 .FriendlyName( _( "Cursor Down Fast" ) )
759 .ToolbarState( TOOLBAR_STATE::HIDDEN )
760 .Flags( AF_NONE )
761 .Parameter( CURSOR_DOWN_FAST ) );
762
764 .Name( "common.Control.cursorLeftFast" )
765 .Scope( AS_GLOBAL )
766 .DefaultHotkey( MD_CTRL + static_cast<int>( WXK_LEFT ) )
767 .FriendlyName( _( "Cursor Left Fast" ) )
768 .ToolbarState( TOOLBAR_STATE::HIDDEN )
769 .Flags( AF_NONE )
770 .Parameter( CURSOR_LEFT_FAST ) );
771
773 .Name( "common.Control.cursorRightFast" )
774 .Scope( AS_GLOBAL )
775 .DefaultHotkey( MD_CTRL + static_cast<int>( WXK_RIGHT ) )
776 .FriendlyName( _( "Cursor Right Fast" ) )
777 .ToolbarState( TOOLBAR_STATE::HIDDEN )
778 .Flags( AF_NONE )
779 .Parameter( CURSOR_RIGHT_FAST ) );
780
782 .Name( "common.Control.cursorClick" )
783 .Scope( AS_GLOBAL )
784 .DefaultHotkey( WXK_RETURN )
785 .LegacyHotkeyName( "Mouse Left Click" )
786 .FriendlyName( _( "Click" ) )
787 .Tooltip( _( "Performs left mouse button click" ) )
788 .ToolbarState( TOOLBAR_STATE::HIDDEN )
789 .Flags( AF_NONE )
790 .Parameter( CURSOR_CLICK ) );
791
793 .Name( "common.Control.cursorDblClick" )
794 .Scope( AS_GLOBAL )
795 .DefaultHotkey( WXK_END )
796 .LegacyHotkeyName( "Mouse Left Double Click" )
797 .FriendlyName( _( "Double-click" ) )
798 .Tooltip( _( "Performs left mouse button double-click" ) )
799 .ToolbarState( TOOLBAR_STATE::HIDDEN )
800 .Flags( AF_NONE )
801 .Parameter( CURSOR_DBL_CLICK ) );
802
804 .Name( "common.Control.refreshPreview" )
805 .ToolbarState( TOOLBAR_STATE::HIDDEN )
806 .Scope( AS_GLOBAL ) );
807
809 .Name( "common.Control.pinLibrary" )
810 .Scope( AS_GLOBAL )
811 .FriendlyName( _( "Pin Library" ) )
812 .Tooltip( _( "Keep the library at the top of the list" ) ) );
813
815 .Name( "common.Control.unpinLibrary" )
816 .Scope( AS_GLOBAL )
817 .FriendlyName( _( "Unpin Library" ) )
818 .Tooltip( _( "No longer keep the library at the top of the list" ) ) );
819
821 .Name( "common.Control.showLibraryTree" )
822 .Scope( AS_GLOBAL )
823 .FriendlyName( _( "Library Tree" ) )
824 .ToolbarState( TOOLBAR_STATE::TOGGLE )
825 .Icon( BITMAPS::search_tree ) );
826
828 .Name( "common.Control.hideLibraryTree" )
829 .Scope( AS_GLOBAL )
830 .FriendlyName( _( "Hide Library Tree" ) )
831 .Icon( BITMAPS::search_tree ) );
832
834 .Name( "common.Control.toggleSimulationSidePanel" )
835 .Scope( AS_GLOBAL )
836 .FriendlyName( _( "Show Side Panel" ) ) );
837
839 .Name( "common.Control.toggleConsole" )
840 .Scope( AS_GLOBAL )
841 .FriendlyName( _( "Show Console Panel" ) ) );
842
844 .Name( "common.Control.libraryTreeSearch" )
845 .Scope( AS_GLOBAL )
846 .FriendlyName( _( "Focus Library Tree Search Field" ) )
847 .DefaultHotkey( MD_CTRL + 'L' )
848 .ToolbarState( TOOLBAR_STATE::HIDDEN ) );
849
851 .Name( "common.Control.panUp" )
852 .Scope( AS_GLOBAL )
853 .DefaultHotkey( MD_SHIFT + static_cast<int>( WXK_UP ) )
854 .FriendlyName( _( "Pan Up" ) )
855 .Flags( AF_NONE )
856 .Parameter( CURSOR_UP ) );
857
859 .Name( "common.Control.panDown" )
860 .Scope( AS_GLOBAL )
861 .DefaultHotkey( MD_SHIFT + static_cast<int>( WXK_DOWN ) )
862 .FriendlyName( _( "Pan Down" ) )
863 .Flags( AF_NONE )
864 .Parameter( CURSOR_DOWN ) );
865
867 .Name( "common.Control.panLeft" )
868 .Scope( AS_GLOBAL )
869 .DefaultHotkey( MD_SHIFT + static_cast<int>( WXK_LEFT ) )
870 .FriendlyName( _( "Pan Left" ) )
871 .Flags( AF_NONE )
872 .Parameter( CURSOR_LEFT ) );
873
875 .Name( "common.Control.panRight" )
876 .Scope( AS_GLOBAL )
877 .DefaultHotkey( MD_SHIFT + static_cast<int>( WXK_RIGHT ) )
878 .FriendlyName( _( "Pan Right" ) )
879 .Flags( AF_NONE )
880 .Parameter( CURSOR_RIGHT ) );
881
882// Grid control
884 .Name( "common.Control.gridFast1" )
885 .Scope( AS_GLOBAL )
886 .DefaultHotkey( MD_ALT + '1' )
887 .LegacyHotkeyName( "Switch Grid To Fast Grid1" )
888 .FriendlyName( _( "Switch to Fast Grid 1" ) ) );
889
891 .Name( "common.Control.gridFast2" )
892 .Scope( AS_GLOBAL )
893 .DefaultHotkey( MD_ALT + '2' )
894 .LegacyHotkeyName( "Switch Grid To Fast Grid2" )
895 .FriendlyName( _( "Switch to Fast Grid 2" ) ) );
896
898 .Name( "common.Control.gridFastCycle" )
899 .Scope( AS_GLOBAL )
900 .DefaultHotkey( MD_ALT + '4' )
901 .LegacyHotkeyName( "Switch Grid To Next Fast Grid" )
902 .FriendlyName( _( "Cycle Fast Grid" ) ) );
903
905 .Name( "common.Control.gridNext" )
906 .Scope( AS_GLOBAL )
907 .DefaultHotkey( 'N' )
908 .LegacyHotkeyName( "Switch Grid To Next" )
909 .FriendlyName( _("Switch to Next Grid" ) ) );
910
912 .Name( "common.Control.gridPrev" )
913 .Scope( AS_GLOBAL )
914 .DefaultHotkey( MD_SHIFT + 'N' )
915 .LegacyHotkeyName( "Switch Grid To Previous" )
916 .FriendlyName( _( "Switch to Previous Grid" ) ) );
917
919 .Name( "common.Control.gridSetOrigin" )
920 .Scope( AS_GLOBAL )
921 .LegacyHotkeyName( "Set Grid Origin" )
922 .FriendlyName( _( "Grid Origin" ) )
923 .Tooltip( _( "Place the grid origin point" ) )
924 .ToolbarState( TOOLBAR_STATE::TOGGLE )
926 .Parameter<VECTOR2D*>( nullptr ) );
927
929 .Name( "common.Control.gridResetOrigin" )
930 .Scope( AS_GLOBAL )
931 .LegacyHotkeyName( "Reset Grid Origin" )
932 .FriendlyName( _( "Reset Grid Origin" ) ) );
933
935 .Name( "common.Control.gridPreset" )
936 .Scope( AS_GLOBAL )
937 .Parameter<int>( 0 ) ); // Default to the 1st element of the list
938
940 .Name( "common.Control.toggleGrid" )
941 .Scope( AS_GLOBAL)
942 .FriendlyName( _( "Show Grid" ) )
943 .Tooltip( _( "Display background grid in the edit window" ) )
944 .ToolbarState( TOOLBAR_STATE::TOGGLE )
945 .Icon( BITMAPS::grid ) );
946
948 .Name( "common.Control.toggleGridOverrides" )
949 .DefaultHotkey( MD_CTRL + MD_SHIFT + 'G' )
950 .Scope( AS_GLOBAL)
951 .FriendlyName( _( "Grid Overrides" ) )
952 .Tooltip( _( "Enables item-specific grids that override the current grid" ) )
953 .ToolbarState( TOOLBAR_STATE::TOGGLE )
954 .Icon( BITMAPS::grid_override ) );
955
957 .Name( "common.Control.editGrids" )
958 .Scope( AS_GLOBAL )
959 .FriendlyName( _( "Edit Grids..." ) )
960 .Tooltip( _( "Edit grid definitions" ) )
961 .Icon( BITMAPS::grid_select ) );
962
964 .Name( "common.Control.editGridOrigin" )
965 .Scope( AS_GLOBAL )
966 .FriendlyName( _( "Grid Origin..." ) )
967 .Tooltip( _( "Set the grid origin point" ) ) );
968
970 .Name( "common.Control.imperialUnits" )
971 .Scope( AS_GLOBAL )
972 .FriendlyName( _( "Inches" ) )
973 .Icon( BITMAPS::unit_inch )
974 .ToolbarState( TOOLBAR_STATE::TOGGLE )
975 .Flags( AF_NONE )
976 .Parameter( EDA_UNITS::INCH ) );
977
979 .Name( "common.Control.mils" )
980 .Scope( AS_GLOBAL )
981 .FriendlyName( _( "Mils" ) )
982 .ToolbarState( TOOLBAR_STATE::TOGGLE )
983 .Icon( BITMAPS::unit_mil )
984 .Flags( AF_NONE )
985 .Parameter( EDA_UNITS::MILS ) );
986
988 .Name( "common.Control.metricUnits" )
989 .Scope( AS_GLOBAL )
990 .FriendlyName( _( "Millimeters" ) )
991 .ToolbarState( TOOLBAR_STATE::TOGGLE )
992 .Icon( BITMAPS::unit_mm )
993 .Flags( AF_NONE )
994 .Parameter( EDA_UNITS::MM ) );
995
997 .Name( "common.Control.updateUnits" )
998 .ToolbarState( TOOLBAR_STATE::HIDDEN )
999 .Scope( AS_GLOBAL ) );
1000
1002 .Name( "common.Control.updatePreferences" )
1003 .ToolbarState( TOOLBAR_STATE::HIDDEN )
1004 .Scope( AS_GLOBAL ) );
1005
1007 .Name( "common.Control.selectColumns" )
1008 .ToolbarState( TOOLBAR_STATE::HIDDEN )
1009 .Scope( AS_GLOBAL )
1010 .FriendlyName( _( "Select Columns..." ) ) );
1011
1013 .Name( "common.Control.toggleUnits" )
1014 .Scope( AS_GLOBAL )
1015 .DefaultHotkey( MD_CTRL + 'U' )
1016 .LegacyHotkeyName( "Switch Units" )
1017 .FriendlyName( _( "Switch units" ) )
1018 .Tooltip( _( "Switch between imperial and metric units" ) )
1019 .Icon( BITMAPS::unit_mm ) );
1020
1022 .Name( "common.Control.togglePolarCoords" )
1023 .Scope( AS_GLOBAL )
1024 .FriendlyName( _( "Polar Coordinates" ) )
1025 .Tooltip( _( "Switch between polar and cartesian coordinate systems" ) )
1026 .ToolbarState( TOOLBAR_STATE::TOGGLE )
1027 .Icon( BITMAPS::polar_coord ) );
1028
1030 .Name( "common.Control.resetLocalCoords" )
1031 .Scope( AS_GLOBAL )
1032 .DefaultHotkey( ' ' )
1033 .LegacyHotkeyName( "Reset Local Coordinates" )
1034 .FriendlyName( _( "Reset Local Coordinates" ) ) );
1035
1037 .Name( "common.Control.toggleCursor" )
1038 .Scope( AS_GLOBAL )
1039 // Don't be tempted to remove "Modern Toolset only". It's in the legacy property name.
1040 .LegacyHotkeyName( "Toggle Cursor Display (Modern Toolset only)" )
1041 .FriendlyName( _( "Always Show Crosshairs" ) )
1042 .Tooltip( _( "Display crosshairs even when not drawing objects" ) )
1043 .Icon( BITMAPS::cursor ) );
1044
1046 .Name( "common.Control.toggleCursorStyle" )
1047 .Scope( AS_GLOBAL )
1048 .FriendlyName( _( "Full-Window Crosshairs" ) )
1049 .Tooltip( _( "Switch display of full-window crosshairs" ) )
1050 .ToolbarState( TOOLBAR_STATE::TOGGLE )
1051 .Icon( BITMAPS::cursor_shape ) );
1052
1054 .Name( "common.Control.highContrastMode" )
1055 .Scope( AS_GLOBAL )
1056 .LegacyHotkeyName( "Toggle High Contrast Mode" )
1057 .FriendlyName( _( "Inactive Layer View Mode" ) )
1058 .Tooltip( _( "Toggle inactive layers between normal and dimmed" ) )
1059 .ToolbarState( TOOLBAR_STATE::TOGGLE )
1060 .Icon( BITMAPS::contrast_mode ) );
1061
1063 .Name( "common.Control.highContrastModeCycle" )
1064 .Scope( AS_GLOBAL )
1065 .DefaultHotkey( 'H' )
1066 .FriendlyName( _( "Inactive Layer View Mode (3-state)" ) )
1067 .Tooltip( _( "Cycle inactive layers between normal, dimmed, and hidden" ) )
1068 .Icon( BITMAPS::contrast_mode ) );
1069
1071 .Name( "common.Control.toggleBoundingBoxes" )
1072 .Scope( AS_GLOBAL )
1073 .FriendlyName( _( "Draw Bounding Boxes" ) )
1074 .ToolbarState( TOOLBAR_STATE::TOGGLE )
1076
1078 .Name( "common.InteractiveSelection.selectionTool" )
1079 .Scope( AS_GLOBAL )
1080 .FriendlyName( _( "Select item(s)" ) )
1081 .ToolbarState( TOOLBAR_STATE::TOGGLE )
1082 .Icon( BITMAPS::cursor )
1083 .Flags( AF_ACTIVATE ) );
1084
1086 .Name( "common.Interactive.measureTool" )
1087 .Scope( AS_GLOBAL )
1088 .DefaultHotkey( MD_CTRL + MD_SHIFT + 'M' )
1089 // Don't be tempted to remove "Modern Toolset only". It's in the legacy property name.
1090 .LegacyHotkeyName( "Measure Distance (Modern Toolset only)" )
1091 .FriendlyName( _( "Measure Tool" ) )
1092 .Tooltip( _( "Interactively measure distance between points" ) )
1093 .ToolbarState( TOOLBAR_STATE::TOGGLE )
1094 .Icon( BITMAPS::measurement )
1095 .Flags( AF_ACTIVATE ) );
1096
1098 .Name( "common.InteractivePicker.pickerTool" )
1099 .ToolbarState( TOOLBAR_STATE::HIDDEN )
1100 .Scope( AS_GLOBAL )
1101 .Flags( AF_ACTIVATE ) );
1102
1104 .Name( "common.InteractivePicker.pickerSubTool" )
1105 .ToolbarState( TOOLBAR_STATE::HIDDEN )
1106 .Scope( AS_GLOBAL ) );
1107
1109 .Name( "common.Control.showProjectManager" )
1110 .Scope( AS_GLOBAL )
1111 .FriendlyName( _( "Switch to Project Manager" ) )
1112 .Tooltip( _( "Show project window" ) )
1113 .Icon( BITMAPS::icon_kicad_24 ) );
1114
1116 .Name( "common.Control.show3DViewer" )
1117 .Scope( AS_GLOBAL )
1118 .DefaultHotkey( MD_ALT + '3' )
1119 .LegacyHotkeyName( "3D Viewer" )
1120 .FriendlyName( _( "3D Viewer" ) )
1121 .Tooltip( _( "Show 3D viewer window" ) )
1122 .Icon( BITMAPS::three_d ) );
1123
1125 .Name( "common.Control.showSymbolBrowser" )
1126 .Scope( AS_GLOBAL )
1127 .FriendlyName( _( "Symbol Library Browser" ) )
1129 .Flags( AF_NONE)
1130 .Parameter( FRAME_SCH_VIEWER ) );
1131
1133 .Name( "common.Control.showSymbolEditor" )
1134 .Scope( AS_GLOBAL )
1135 .FriendlyName( _( "Symbol Editor" ) )
1136 .Tooltip( _( "Create, delete and edit schematic symbols" ) )
1137 .Icon( BITMAPS::libedit )
1138 .Flags( AF_NONE )
1139 .Parameter( FRAME_SCH_SYMBOL_EDITOR ) );
1140
1142 .Name( "common.Control.showFootprintBrowser" )
1143 .Scope( AS_GLOBAL )
1144 .FriendlyName( _( "Footprint Library Browser" ) )
1146 .Flags( AF_NONE )
1147 .Parameter( FRAME_FOOTPRINT_VIEWER ) );
1148
1150 .Name( "common.Control.showFootprintEditor" )
1151 .Scope( AS_GLOBAL )
1152 .FriendlyName( _( "Footprint Editor" ) )
1153 .Tooltip( _( "Create, delete and edit board footprints" ) )
1154 .Icon( BITMAPS::module_editor )
1155 .Flags( AF_NONE )
1156 .Parameter( FRAME_FOOTPRINT_EDITOR ) );
1157
1159 .Name( "common.Control.showProperties" )
1160 .Scope( AS_GLOBAL )
1161 .FriendlyName( _( "Properties" ) )
1162 .Tooltip( _( "Show/hide the properties manager" ) )
1163 .ToolbarState( TOOLBAR_STATE::TOGGLE )
1164 .Icon( BITMAPS::tools ) );
1165
1167 .Name( "common.Control.showDatasheet" )
1168 .Scope( AS_GLOBAL )
1169 .DefaultHotkey( 'D' )
1170 .LegacyHotkeyName( "Show Datasheet" )
1171 .FriendlyName( _( "Show Datasheet" ) )
1172 .Tooltip( _( "Open the datasheet in a browser" ) )
1173 .Icon( BITMAPS::datasheet ) );
1174
1176 .Name( "common.Control.updatePcbFromSchematic" )
1177 .Scope( AS_GLOBAL )
1178 .DefaultHotkey( WXK_F8 )
1179 .LegacyHotkeyName( "Update PCB from Schematic" )
1180 .FriendlyName( _( "Update PCB from Schematic..." ) )
1181 .Tooltip( _( "Update PCB with changes made to schematic" ) )
1183
1185 .Name( "common.Control.updateSchematicFromPCB" )
1186 .Scope( AS_GLOBAL )
1187 .FriendlyName( _( "Update Schematic from PCB..." ) )
1188 .Tooltip( _( "Update schematic with changes made to PCB" ) )
1190
1192 .Name( "common.SuiteControl.openPreferences" )
1193 .Scope( AS_GLOBAL )
1194 .DefaultHotkey( MD_CTRL + ',' )
1195 .FriendlyName( _( "Preferences..." ) )
1196 .Tooltip( _( "Show preferences for all open tools" ) )
1197 .Icon( BITMAPS::preference )
1198 .UIId( wxID_PREFERENCES ) );
1199
1201 .Name( "common.SuiteControl.configurePaths" )
1202 .Scope( AS_GLOBAL )
1203 .FriendlyName( _( "Configure Paths..." ) )
1204 .Tooltip( _( "Edit path configuration environment variables" ) )
1205 .Icon( BITMAPS::path ) );
1206
1208 .Name( "common.SuiteControl.showSymbolLibTable" )
1209 .Scope( AS_GLOBAL )
1210 .FriendlyName( _( "Manage Symbol Libraries..." ) )
1211 .Tooltip( _( "Edit the global and project symbol library lists" ) )
1212 .Icon( BITMAPS::library_table ) );
1213
1215 .Name( "common.SuiteControl.showFootprintLibTable" )
1216 .Scope( AS_GLOBAL )
1217 .FriendlyName( _( "Manage Footprint Libraries..." ) )
1218 .Tooltip( _( "Edit the global and project footprint library lists" ) )
1219 .Icon( BITMAPS::library_table ) );
1220
1222 .Name( "common.SuiteControl.showDesignBLockLibTable" )
1223 .Scope( AS_GLOBAL )
1224 .FriendlyName( _( "Manage Design Block Libraries..." ) )
1225 .Tooltip( _( "Edit the global and project design block library lists" ) )
1226 .Icon( BITMAPS::library_table ) );
1227
1229 .Name( "common.SuiteControl.gettingStarted" )
1230 .Scope( AS_GLOBAL )
1231 .FriendlyName( _( "Getting Started with KiCad" ) )
1232 .Tooltip( _( "Open \"Getting Started in KiCad\" guide for beginners" ) )
1233 .Icon( BITMAPS::help ) );
1234
1236 .Name( "common.SuiteControl.help" )
1237 .Scope( AS_GLOBAL )
1238 .FriendlyName( _( "Help" ) )
1239 .Tooltip( _( "Open product documentation in a web browser" ) )
1240 .Icon( BITMAPS::help_online ) );
1241
1243 .Name( "common.SuiteControl.about" )
1244 .Scope( AS_GLOBAL )
1245 .FriendlyName( _( "About KiCad" ) )
1246 .UIId( wxID_ABOUT )
1247 .Icon( BITMAPS::about ) );
1248
1250 .Name( "common.SuiteControl.listHotKeys" )
1251 .Scope( AS_GLOBAL )
1252 .DefaultHotkey( MD_CTRL + static_cast<int>( WXK_F1 ) )
1253 .LegacyHotkeyName( "List Hotkeys" )
1254 .FriendlyName( _( "List Hotkeys..." ) )
1255 .Tooltip( _( "Displays current hotkeys table and corresponding commands" ) )
1256 .Icon( BITMAPS::hotkeys ) );
1257
1259 .Name( "common.SuiteControl.getInvolved" )
1260 .Scope( AS_GLOBAL )
1261 .FriendlyName( _( "Get Involved" ) )
1262 .Tooltip( _( "Open \"Contribute to KiCad\" in a web browser" ) )
1263 .Icon( BITMAPS::info ) );
1264
1266 .Name( "common.SuiteControl.donate" )
1267 .Scope( AS_GLOBAL )
1268 .FriendlyName( _( "Donate" ) )
1269 .Tooltip( _( "Open \"Donate to KiCad\" in a web browser" ) ) );
1270
1272 .Name( "common.SuiteControl.reportBug" )
1273 .Scope( AS_GLOBAL )
1274 .FriendlyName( _( "Report Bug" ) )
1275 .Tooltip( _( "Report a problem with KiCad" ) )
1276 .Icon( BITMAPS::bug ) );
1277
1279 .Name( "common.Control.ddaddLibrary" )
1280 .Scope( AS_GLOBAL ) );
1281
1282// API
1283
1285 .Name( "common.API.pluginsReload" )
1286 .Scope( AS_GLOBAL )
1287 .FriendlyName( _( "Refresh Plugins" ) )
1288 .Tooltip( _( "Reload all python plugins and refresh plugin menus" ) )
1289 .Icon( BITMAPS::reload ) );
1290
1291// Embedding Files
1292
1294 .Name( "common.Embed.embededFile" )
1295 .Scope( AS_GLOBAL )
1296 .FriendlyName( _( "Embedded Files" ) )
1297 .Tooltip( _( "Manage embedded files" ) ) );
1298
1300 .Name( "common.Embed.removeFile" )
1301 .Scope( AS_GLOBAL )
1302 .FriendlyName( _( "Remove File" ) )
1303 .Tooltip( _( "Remove an embedded file" ) ) );
1304
1306 .Name( "common.Embed.extractFile" )
1307 .Scope( AS_GLOBAL )
1308 .FriendlyName( _( "Extract File" ) )
1309 .Tooltip( _( "Extract an embedded file" ) ) );
1310
1311// System-wide selection Events
1312
1314 "common.Interactive.pointSelected" );
1315const TOOL_EVENT EVENTS::SelectedEvent( TC_MESSAGE, TA_ACTION, "common.Interactive.selected" );
1316const TOOL_EVENT EVENTS::UnselectedEvent( TC_MESSAGE, TA_ACTION, "common.Interactive.unselected" );
1317const TOOL_EVENT EVENTS::ClearedEvent( TC_MESSAGE, TA_ACTION, "common.Interactive.cleared" );
1318
1320 "common.Interactive.connectivityChanged" );
1321
1323 "common.Interactive.modified" );
1324const TOOL_EVENT EVENTS::SelectedItemsMoved( TC_MESSAGE, TA_ACTION, "common.Interactive.moved" );
1326 "common.Interactive.inhibit" );
1328 "common.Interactive.uninhibit" );
1329
1331 "common.Interactive.disambiguate" );
1332
1334 "common.Interactive.gridChangedByKey" );
1335
1336const TOOL_EVENT
1338 "common.Interactive.contrastModeChangedByKeyEvent" );
1339
1340// System-wide undo/redo Events
1341
#define _(s)
Definition: actions.cpp:38
@ grid_override
@ zoom_center_on_screen
@ text_align_right
@ table_add_row_above
@ cursor_shape
@ delete_cursor
@ zoom_in_vertically
@ directory_browser
@ table_add_column_before
@ table_add_column_after
@ icon_kicad_24
@ gerbview_show_negative_objects
@ table_add_row_below
@ text_align_left
@ module_editor
@ text_align_center
@ grid_select_axis
@ find_replace
@ table_delete_column
@ print_button
@ table_select_column
@ zoom_in_horizontally
@ marker_previous
@ paste_special
@ contrast_mode
@ library_browser
@ table_delete_row
@ zoom_out_vertically
@ zoom_fit_in_page
@ table_select
@ directory_open
@ table_select_row
@ update_pcb_from_sch
@ library_table
@ zoom_fit_to_objects
@ marker_exclude
@ zoom_out_horizontally
@ update_sch_from_pcb
@ restore_from_file
static TOOL_ACTION addRowAbove
Definition: actions.h:97
static TOOL_ACTION addColBefore
Definition: actions.h:99
static TOOL_ACTION gridProperties
Definition: actions.h:193
static TOOL_ACTION decrementPrimary
Definition: actions.h:89
static TOOL_ACTION gridFastCycle
Definition: actions.h:185
static TOOL_ACTION updatePcbFromSchematic
Definition: actions.h:218
static TOOL_ACTION toggleGrid
Definition: actions.h:191
static TOOL_ACTION paste
Definition: actions.h:73
static TOOL_ACTION pickerSubTool
Definition: actions.h:209
static TOOL_ACTION excludeMarker
Definition: actions.h:121
static TOOL_ACTION about
Definition: actions.h:238
static TOOL_ACTION cancelInteractive
Definition: actions.h:65
static TOOL_ACTION nextMarker
Definition: actions.h:120
static TOOL_ACTION zoomRedraw
Definition: actions.h:124
static TOOL_ACTION millimetersUnits
Definition: actions.h:199
static TOOL_ACTION unselectAll
Definition: actions.h:76
static TOOL_ACTION gridFast1
Definition: actions.h:183
static TOOL_ACTION openWithTextEditor
Definition: actions.h:61
static TOOL_ACTION gridPrev
Definition: actions.h:187
static TOOL_ACTION revert
Definition: actions.h:55
static TOOL_ACTION show3DViewer
Definition: actions.h:213
static TOOL_ACTION showLibraryTree
Definition: actions.h:154
static TOOL_ACTION reportBug
Definition: actions.h:242
static TOOL_ACTION decrementSecondary
Definition: actions.h:91
static TOOL_ACTION replaceAll
Definition: actions.h:115
static TOOL_ACTION updatePreferences
Definition: actions.h:227
static TOOL_ACTION cursorLeft
Definition: actions.h:165
static TOOL_ACTION zoomOutCenter
Definition: actions.h:128
static TOOL_ACTION togglePolarCoords
Definition: actions.h:202
static TOOL_ACTION saveAs
Definition: actions.h:52
static TOOL_ACTION addLibrary
Definition: actions.h:49
static TOOL_ACTION copy
Definition: actions.h:71
static TOOL_ACTION zoomIn
Definition: actions.h:125
static TOOL_ACTION pluginsReload
Definition: actions.h:245
static TOOL_ACTION extractFile
Definition: actions.h:249
static TOOL_ACTION cursorLeftFast
Definition: actions.h:170
static TOOL_ACTION deleteRows
Definition: actions.h:101
static TOOL_ACTION zoomRedo
Definition: actions.h:140
static TOOL_ACTION addRowBelow
Definition: actions.h:98
static TOOL_ACTION pickerTool
Definition: actions.h:208
static TOOL_ACTION toggleSimulationSidePanel
Definition: actions.h:158
static TOOL_ACTION cycleArcEditMode
Definition: actions.h:226
static TOOL_ACTION gridPreset
Definition: actions.h:190
static TOOL_ACTION gridResetOrigin
Definition: actions.h:189
static TOOL_ACTION updateUnits
Definition: actions.h:200
static TOOL_ACTION updateFind
Definition: actions.h:116
static TOOL_ACTION showSymbolLibTable
Definition: actions.h:233
static TOOL_ACTION openDirectory
Definition: actions.h:62
static TOOL_ACTION deleteColumns
Definition: actions.h:102
static TOOL_ACTION showSymbolEditor
Definition: actions.h:215
static TOOL_ACTION showSymbolBrowser
Definition: actions.h:214
static TOOL_ACTION pasteSpecial
Definition: actions.h:74
static TOOL_ACTION findPrevious
Definition: actions.h:112
static TOOL_ACTION unmergeCells
Definition: actions.h:104
static TOOL_ACTION showDatasheet
Definition: actions.h:221
static TOOL_ACTION zoomFitSelection
Definition: actions.h:136
static TOOL_ACTION selectColumns
Definition: actions.h:95
static TOOL_ACTION centerSelection
Definition: actions.h:142
static TOOL_ACTION mergeCells
Definition: actions.h:103
static TOOL_ACTION donate
Definition: actions.h:240
static TOOL_ACTION cursorDown
Definition: actions.h:164
static TOOL_ACTION zoomOut
Definition: actions.h:126
static TOOL_ACTION addColAfter
Definition: actions.h:100
static TOOL_ACTION editTable
Definition: actions.h:105
static TOOL_ACTION findAndReplace
Definition: actions.h:110
static TOOL_ACTION milsUnits
Definition: actions.h:198
static TOOL_ACTION highContrastModeCycle
Definition: actions.h:146
static TOOL_ACTION listHotKeys
Definition: actions.h:239
static TOOL_ACTION cursorRightFast
Definition: actions.h:171
static TOOL_ACTION openPreferences
Definition: actions.h:231
static TOOL_ACTION pinLibrary
Definition: actions.h:152
static TOOL_ACTION toggleBoundingBoxes
Definition: actions.h:147
static TOOL_ACTION replaceAndFindNext
Definition: actions.h:114
static TOOL_ACTION showContextMenu
Definition: actions.h:67
static TOOL_ACTION toggleCursor
Definition: actions.h:143
static TOOL_ACTION zoomOutHorizontally
Definition: actions.h:130
static TOOL_ACTION getInvolved
Definition: actions.h:241
static TOOL_ACTION rightJustify
Definition: actions.h:82
static TOOL_ACTION showFootprintLibTable
Definition: actions.h:234
static TOOL_ACTION centerContents
Definition: actions.h:141
static TOOL_ACTION plot
Definition: actions.h:58
static TOOL_ACTION zoomCenter
Definition: actions.h:133
static TOOL_ACTION panDown
Definition: actions.h:178
static TOOL_ACTION selectLibTreeColumns
Definition: actions.h:228
static TOOL_ACTION open
Definition: actions.h:50
static TOOL_ACTION saveAll
Definition: actions.h:54
static TOOL_ACTION findNext
Definition: actions.h:111
static TOOL_ACTION zoomOutVertically
Definition: actions.h:132
static TOOL_ACTION cursorDblClick
Definition: actions.h:174
static TOOL_ACTION pageSettings
Definition: actions.h:56
static TOOL_ACTION showSearch
Definition: actions.h:108
static TOOL_ACTION undo
Definition: actions.h:68
static TOOL_ACTION incrementSecondary
Definition: actions.h:90
static TOOL_ACTION cursorDownFast
Definition: actions.h:169
static TOOL_ACTION removeFile
Cursor control event types.
Definition: actions.h:250
static TOOL_ACTION prevMarker
Definition: actions.h:119
static TOOL_ACTION selectRows
Definition: actions.h:94
static TOOL_ACTION duplicate
Definition: actions.h:77
static TOOL_ACTION toggleConsole
Definition: actions.h:157
static TOOL_ACTION inchesUnits
Definition: actions.h:197
static TOOL_ACTION highContrastMode
Definition: actions.h:145
static TOOL_ACTION embeddedFiles
Definition: actions.h:248
static TOOL_ACTION incrementPrimary
Definition: actions.h:88
static TOOL_ACTION cursorUpFast
Definition: actions.h:168
static TOOL_ACTION toggleCursorStyle
Definition: actions.h:144
static TOOL_ACTION gridOrigin
Definition: actions.h:194
static TOOL_ACTION measureTool
Definition: actions.h:207
static TOOL_ACTION zoomInHorizontally
Definition: actions.h:129
static TOOL_ACTION panLeft
Definition: actions.h:179
static TOOL_ACTION updateMenu
Definition: actions.h:224
static TOOL_ACTION activatePointEditor
Definition: actions.h:225
static TOOL_ACTION libraryTreeSearch
Definition: actions.h:160
static TOOL_ACTION doDelete
Definition: actions.h:78
static TOOL_ACTION quit
Definition: actions.h:59
static TOOL_ACTION selectionTool
Definition: actions.h:206
static TOOL_ACTION save
Definition: actions.h:51
static TOOL_ACTION cursorClick
Definition: actions.h:173
static TOOL_ACTION zoomFitScreen
Definition: actions.h:134
static TOOL_ACTION redo
Definition: actions.h:69
static TOOL_ACTION zoomPreset
Definition: actions.h:137
static TOOL_ACTION deleteTool
Definition: actions.h:79
static TOOL_ACTION hideLibraryTree
Definition: actions.h:155
static TOOL_ACTION zoomTool
Definition: actions.h:138
static TOOL_ACTION updateSchematicFromPcb
Definition: actions.h:219
static TOOL_ACTION unpinLibrary
Definition: actions.h:153
static TOOL_ACTION increment
Definition: actions.h:87
static TOOL_ACTION leftJustify
Definition: actions.h:80
static TOOL_ACTION panUp
Definition: actions.h:177
static TOOL_ACTION showDesignBlockLibTable
Definition: actions.h:235
static TOOL_ACTION showFootprintEditor
Definition: actions.h:217
static TOOL_ACTION print
Definition: actions.h:57
static TOOL_ACTION findNextMarker
Definition: actions.h:113
static TOOL_ACTION showProperties
Definition: actions.h:220
static TOOL_ACTION doNew
Definition: actions.h:47
static TOOL_ACTION zoomFitObjects
Definition: actions.h:135
static TOOL_ACTION toggleUnits
Definition: actions.h:201
static TOOL_ACTION zoomInCenter
Definition: actions.h:127
static TOOL_ACTION newLibrary
Definition: actions.h:48
static TOOL_ACTION panRight
Definition: actions.h:180
static TOOL_ACTION saveCopy
Definition: actions.h:53
static TOOL_ACTION cut
Definition: actions.h:70
static TOOL_ACTION selectTable
Definition: actions.h:96
static TOOL_ACTION gridSetOrigin
Definition: actions.h:188
static TOOL_ACTION gridFast2
Definition: actions.h:184
static TOOL_ACTION expandAll
Definition: actions.h:83
static TOOL_ACTION zoomInVertically
Definition: actions.h:131
static TOOL_ACTION ddAddLibrary
Definition: actions.h:60
static TOOL_ACTION configurePaths
Definition: actions.h:232
static TOOL_ACTION showProjectManager
Definition: actions.h:212
static TOOL_ACTION gettingStarted
Definition: actions.h:236
static TOOL_ACTION copyAsText
Definition: actions.h:72
static TOOL_ACTION cursorUp
Cursor control with keyboard.
Definition: actions.h:163
static TOOL_ACTION refreshPreview
Definition: actions.h:149
static TOOL_ACTION zoomUndo
Definition: actions.h:139
static TOOL_ACTION showFootprintBrowser
Definition: actions.h:216
static TOOL_ACTION toggleGridOverrides
Definition: actions.h:192
static TOOL_ACTION finishInteractive
Definition: actions.h:66
static TOOL_ACTION gridNext
Definition: actions.h:186
static TOOL_ACTION cursorRight
Definition: actions.h:166
static TOOL_ACTION selectAll
Definition: actions.h:75
static TOOL_ACTION help
Definition: actions.h:237
static TOOL_ACTION find
Definition: actions.h:109
static TOOL_ACTION collapseAll
Definition: actions.h:84
static TOOL_ACTION resetLocalCoords
Definition: actions.h:203
static TOOL_ACTION centerJustify
Definition: actions.h:81
static const TOOL_EVENT DisambiguatePoint
Used for hotkey feedback.
Definition: actions.h:313
static const TOOL_EVENT ClearedEvent
Definition: actions.h:298
static const TOOL_EVENT InhibitSelectionEditing
Definition: actions.h:309
static const TOOL_EVENT GridChangedByKeyEvent
Definition: actions.h:316
static const TOOL_EVENT UndoRedoPreEvent
Definition: actions.h:319
static const TOOL_EVENT SelectedEvent
Definition: actions.h:296
static const TOOL_EVENT SelectedItemsModified
Selected items were moved, this can be very high frequency on the canvas, use with care.
Definition: actions.h:303
static const TOOL_EVENT UninhibitSelectionEditing
Used to inform tool that it should display the disambiguation menu.
Definition: actions.h:310
static const TOOL_EVENT UndoRedoPostEvent
Definition: actions.h:320
static const TOOL_EVENT PointSelectedEvent
Definition: actions.h:295
static const TOOL_EVENT SelectedItemsMoved
Used to inform tools that the selection should temporarily be non-editable.
Definition: actions.h:306
static const TOOL_EVENT ContrastModeChangedByKeyEvent
Definition: actions.h:317
static const TOOL_EVENT ConnectivityChangedEvent
Selected item had a property changed (except movement)
Definition: actions.h:300
static const TOOL_EVENT UnselectedEvent
Definition: actions.h:297
Build up the properties of a TOOL_ACTION in an incremental manner that is static-construction safe.
Definition: tool_action.h:118
Represent a single user action.
Definition: tool_action.h:304
Generic, UI-independent tool event.
Definition: tool_event.h:168
The common library.
@ FRAME_SCH_SYMBOL_EDITOR
Definition: frame_type.h:35
@ FRAME_FOOTPRINT_VIEWER
Definition: frame_type.h:45
@ FRAME_SCH_VIEWER
Definition: frame_type.h:36
@ FRAME_FOOTPRINT_EDITOR
Definition: frame_type.h:43
@ TOGGLE
Action is a toggle button on the toolbar.
@ CANCEL
Action can be cancelled by clicking the toolbar button again.
@ HIDDEN
Action is hidden from the toolbar.
@ AS_GLOBAL
Global action (toolbar/main menu event, global shortcut)
Definition: tool_action.h:49
@ AF_ACTIVATE
Action activates a tool.
Definition: tool_action.h:56
@ AF_NONE
Definition: tool_action.h:55
@ TA_UNDO_REDO_POST
This event is sent after undo/redo command is performed.
Definition: tool_event.h:109
@ TA_ACTION
Tool action (allows one to control tools).
Definition: tool_event.h:112
@ TC_MESSAGE
Definition: tool_event.h:58
@ MD_ALT
Definition: tool_event.h:145
@ MD_CTRL
Definition: tool_event.h:144
@ MD_SHIFT
Definition: tool_event.h:143