/* * This program source code file is part of KiCad, a free EDA CAD application. * * Copyright (C) 2019-2023 CERN * Copyright (C) 2019-2023 KiCad Developers, see AUTHORS.txt for contributors. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, you may find one here: * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html * or you may search the http://www.gnu.org website for the version 2 license, * or you may write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include #include #include #include #include #include // Forward-define of parameter types class SCH_BITMAP; // Actions, being statically-defined, require specialized I18N handling. We continue to // use the _() macro so that string harvesting by the I18N framework doesn't have to be // specialized, but we don't translate on initialization and instead do it in the getters. #undef _ #define _(s) s // EE_INSPECTION_TOOL // TOOL_ACTION EE_ACTIONS::runERC( TOOL_ACTION_ARGS() .Name( "eeschema.InspectionTool.runERC" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Electrical Rules Checker" ) ) .Tooltip( _( "Perform electrical rules check" ) ) .Icon( BITMAPS::erc ) ); TOOL_ACTION EE_ACTIONS::checkSymbol( TOOL_ACTION_ARGS() .Name( "eeschema.InspectionTool.checkSymbol" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Symbol Checker" ) ) .Tooltip( _( "Show the symbol checker window" ) ) .Icon( BITMAPS::erc ) ); TOOL_ACTION EE_ACTIONS::diffSymbol( TOOL_ACTION_ARGS() .Name( "eeschema.InspectionTool.diffSymbol" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Compare Symbol with Library" ) ) .Tooltip( _( "Show differences between schematic symbol and its library equivalent" ) ) .Icon( BITMAPS::library ) ); TOOL_ACTION EE_ACTIONS::showSimulator( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.showSimulator" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Simulator" ) ) .Tooltip( _( "Show simulation window for running SPICE or IBIS simulations." ) ) .Icon( BITMAPS::simulator ) ); TOOL_ACTION EE_ACTIONS::showDatasheet( TOOL_ACTION_ARGS() .Name( "eeschema.InspectionTool.showDatasheet" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'D' ) .LegacyHotkeyName( "Show Datasheet" ) .FriendlyName( _( "Show Datasheet" ) ) .Tooltip( _( "Opens the datasheet in a browser" ) ) .Icon( BITMAPS::datasheet ) ); // EE_POINT_EDITOR // TOOL_ACTION EE_ACTIONS::pointEditorAddCorner( TOOL_ACTION_ARGS() .Name( "eeschema.PointEditor.addCorner" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Create Corner" ) ) .Tooltip( _( "Create a corner" ) ) .Icon( BITMAPS::add_corner ) ); TOOL_ACTION EE_ACTIONS::pointEditorRemoveCorner( TOOL_ACTION_ARGS() .Name( "eeschema.PointEditor.removeCorner" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Remove Corner" ) ) .Tooltip( _( "Remove corner" ) ) .Icon( BITMAPS::delete_cursor ) ); // EE_SELECTION_TOOL // TOOL_ACTION EE_ACTIONS::selectionActivate( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveSelection" ) .Scope( AS_GLOBAL ) .Flags( AF_ACTIVATE ) ); TOOL_ACTION EE_ACTIONS::selectNode( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveSelection.SelectNode" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_ALT + '3' ) .LegacyHotkeyName( "Select Node" ) .FriendlyName( _( "Select Node" ) ) .Tooltip( _( "Select a connection item under the cursor" ) ) ); TOOL_ACTION EE_ACTIONS::selectConnection( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveSelection.SelectConnection" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_ALT + '4' ) .LegacyHotkeyName( "Select Connection" ) .FriendlyName( _( "Select Connection" ) ) .Tooltip( _( "Select a complete connection" ) ) .Icon( BITMAPS::net_highlight_schematic ) ); TOOL_ACTION EE_ACTIONS::selectionMenu( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveSelection.SelectionMenu" ) .Scope( AS_GLOBAL ) ); TOOL_ACTION EE_ACTIONS::addItemToSel( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveSelection.AddItemToSel" ) .Scope( AS_GLOBAL ) ); TOOL_ACTION EE_ACTIONS::addItemsToSel( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveSelection.AddItemsToSel" ) .Scope( AS_GLOBAL ) ); TOOL_ACTION EE_ACTIONS::removeItemFromSel( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveSelection.RemoveItemFromSel" ) .Scope( AS_GLOBAL ) ); TOOL_ACTION EE_ACTIONS::removeItemsFromSel( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveSelection.RemoveItemsFromSel" ) .Scope( AS_GLOBAL ) ); TOOL_ACTION EE_ACTIONS::clearSelection( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveSelection.ClearSelection" ) .Scope( AS_GLOBAL ) ); TOOL_ACTION EE_ACTIONS::syncSelection( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveSelection.SyncSelection" ) .Scope( AS_GLOBAL ) ); // SYMBOL_EDITOR_CONTROL // TOOL_ACTION EE_ACTIONS::saveLibraryAs( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.saveLibraryAs" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_SHIFT + MD_CTRL + 'S' ) .LegacyHotkeyName( "Save As" ) .FriendlyName( _( "Save Library As..." ) ) .Tooltip( _( "Save the current library to a new file." ) ) ); TOOL_ACTION EE_ACTIONS::newSymbol( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.newSymbol" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_CTRL + 'N' ) .FriendlyName( _( "New Symbol..." ) ) .Tooltip( _( "Create a new symbol" ) ) .Icon( BITMAPS::new_component ) ); TOOL_ACTION EE_ACTIONS::deriveFromExistingSymbol( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.deriveFromExistingSymbol" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Derive from Existing Symbol" ) ) .Tooltip( _( "Create a new symbol, derived from an existing symbol" ) ) .Icon( BITMAPS::new_component ) ); TOOL_ACTION EE_ACTIONS::editSymbol( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.editSymbol" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Edit Symbol" ) ) .Tooltip( _( "Show selected symbol on editor canvas" ) ) .Icon( BITMAPS::edit ) ); TOOL_ACTION EE_ACTIONS::duplicateSymbol( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.duplicateSymbol" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Duplicate Symbol" ) ) .Tooltip( _( "Make a copy of the selected symbol" ) ) .Icon( BITMAPS::duplicate ) ); TOOL_ACTION EE_ACTIONS::renameSymbol( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.renameFootprint" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Rename Symbol..." ) ) .Tooltip( _( "Rename the selected symbol" ) ) .Icon( BITMAPS::edit ) ); TOOL_ACTION EE_ACTIONS::saveSymbolCopyAs( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.saveSymbolCopyAs" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Save Copy As..." ) ) .Tooltip( _( "Save a copy of the current symbol to a different library." ) ) .Icon( BITMAPS::save_as ) ); TOOL_ACTION EE_ACTIONS::deleteSymbol( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.deleteSymbol" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Delete Symbol" ) ) .Tooltip( _( "Remove the selected symbol from its library" ) ) .Icon( BITMAPS::trash ) ); TOOL_ACTION EE_ACTIONS::cutSymbol( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.cutSymbol" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Cut" ) ) .Icon( BITMAPS::cut ) ); TOOL_ACTION EE_ACTIONS::copySymbol( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.copySymbol" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Copy" ) ) .Icon( BITMAPS::copy ) ); TOOL_ACTION EE_ACTIONS::pasteSymbol( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.pasteSymbol" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Paste Symbol" ) ) .Icon( BITMAPS::paste ) ); TOOL_ACTION EE_ACTIONS::importSymbol( TOOL_ACTION_ARGS() .Name("eeschema.SymbolLibraryControl.importSymbol" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Import Symbol..." ) ) .Tooltip( _( "Import a symbol to the current library" ) ) .Icon( BITMAPS::import_part ) ); TOOL_ACTION EE_ACTIONS::exportSymbol( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.exportSymbol" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Export..." ) ) .Tooltip( _( "Export a symbol to a new library file" ) ) .Icon( BITMAPS::export_part ) ); TOOL_ACTION EE_ACTIONS::updateSymbolFields( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.updateSymbolFields" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Update Symbol Fields..." ) ) .Tooltip( _( "Update symbol to match changes made in parent symbol" ) ) .Icon( BITMAPS::refresh ) ); TOOL_ACTION EE_ACTIONS::setUnitDisplayName( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.setUnitDisplayName" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Set Unit Display Name..." ) ) .Tooltip( _( "Set the display name for a unit" ) ) ); TOOL_ACTION EE_ACTIONS::addSymbolToSchematic( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.addSymbolToSchematic" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Add Symbol to Schematic" ) ) .Tooltip( _( "Add Symbol to Schematic" ) ) .Icon( BITMAPS::add_symbol_to_schematic ) ); TOOL_ACTION EE_ACTIONS::showElectricalTypes( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.showElectricalTypes" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Show Pin Electrical Types" ) ) .Tooltip( _( "Annotate pins with their electrical types" ) ) .Icon( BITMAPS::pin_show_etype ) ); TOOL_ACTION EE_ACTIONS::showPinNumbers( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.showPinNumbers" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Show Pin Numbers" ) ) .Tooltip( _( "Annotate pins with their numbers" ) ) .Icon( BITMAPS::pin ) ); TOOL_ACTION EE_ACTIONS::showSymbolTree( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.showSymbolTree" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Show Symbol Tree" ) ) .Icon( BITMAPS::search_tree ) ); TOOL_ACTION EE_ACTIONS::hideSymbolTree( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.hideSymbolTree" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Hide Symbol Tree" ) ) .Icon( BITMAPS::search_tree ) ); TOOL_ACTION EE_ACTIONS::exportSymbolView( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.exportSymbolView" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Export View as PNG..." ) ) .Tooltip( _( "Create PNG file from the current view" ) ) .Icon( BITMAPS::export_png ) ); TOOL_ACTION EE_ACTIONS::exportSymbolAsSVG( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.exportSymbolAsSVG" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Export Symbol as SVG..." ) ) .Tooltip( _( "Create SVG file from the current symbol" ) ) .Icon( BITMAPS::export_svg ) ); TOOL_ACTION EE_ACTIONS::toggleSyncedPinsMode( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolLibraryControl.toggleSyncedPinsMode" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Synchronized Pins Mode" ) ) .Tooltip( _( "Synchronized Pins Mode\n" "When enabled propagates all changes (except pin numbers) to other units.\n" "Enabled by default for multiunit parts with interchangeable units." ) ) .Icon( BITMAPS::pin2pin ) ); // SYMBOL_EDITOR_DRAWING_TOOLS // TOOL_ACTION EE_ACTIONS::placeSymbolPin( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolDrawing.placeSymbolPin" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'P' ) .LegacyHotkeyName( "Create Pin" ) .FriendlyName( _( "Add Pin" ) ) .Tooltip( _( "Add a pin" ) ) .Icon( BITMAPS::pin ) .Flags( AF_ACTIVATE ) .Parameter( LIB_PIN_T ) ); TOOL_ACTION EE_ACTIONS::placeSymbolText( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolDrawing.placeSymbolText" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Add Text" ) ) .Tooltip( _( "Add a text item" ) ) .Icon( BITMAPS::text ) .Flags( AF_ACTIVATE ) .Parameter( LIB_TEXT_T ) ); TOOL_ACTION EE_ACTIONS::drawSymbolTextBox( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolDrawing.drawSymbolTextBox" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Add Text Box" ) ) .Tooltip( _( "Add a text box item" ) ) .Icon( BITMAPS::add_textbox ) .Flags( AF_ACTIVATE ) ); TOOL_ACTION EE_ACTIONS::drawSymbolLines( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolDrawing.drawSymbolLines" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Add Lines" ) ) .Tooltip( _( "Add connected graphic lines" ) ) .Icon( BITMAPS::add_graphical_segments ) .Flags( AF_ACTIVATE ) .Parameter( SHAPE_T::POLY ) ); TOOL_ACTION EE_ACTIONS::drawSymbolPolygon( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolDrawing.drawSymbolPolygon" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Add Polygon" ) ) .Tooltip( _( "Draw polygons" ) ) .Icon( BITMAPS::add_graphical_polygon ) .Flags( AF_ACTIVATE ) .Parameter( SHAPE_T::POLY ) ); TOOL_ACTION EE_ACTIONS::placeSymbolAnchor( TOOL_ACTION_ARGS() .Name( "eeschema.SymbolDrawing.placeSymbolAnchor" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Move Symbol Anchor" ) ) .Tooltip( _( "Specify a new location for the symbol anchor" ) ) .Icon( BITMAPS::anchor ) .Flags( AF_ACTIVATE ) ); // SYMBOL_EDITOR_PIN_TOOL // TOOL_ACTION EE_ACTIONS::pushPinLength( TOOL_ACTION_ARGS() .Name( "eeschema.PinEditing.pushPinLength" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Push Pin Length" ) ) .Tooltip( _( "Copy pin length to other pins in symbol" ) ) .Icon( BITMAPS::pin_size_to ) ); TOOL_ACTION EE_ACTIONS::pushPinNameSize( TOOL_ACTION_ARGS() .Name( "eeschema.PinEditing.pushPinNameSize" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Push Pin Name Size" ) ) .Tooltip( _( "Copy pin name size to other pins in symbol" ) ) .Icon( BITMAPS::pin_size_to ) ); TOOL_ACTION EE_ACTIONS::pushPinNumSize( TOOL_ACTION_ARGS() .Name( "eeschema.PinEditing.pushPinNumSize" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Push Pin Number Size" ) ) .Tooltip( _( "Copy pin number size to other pins in symbol" ) ) .Icon( BITMAPS::pin_size_to ) ); // SCH_DRAWING_TOOLS // TOOL_ACTION EE_ACTIONS::placeSymbol( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawing.placeSymbol" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'A' ) .LegacyHotkeyName( "Add Symbol" ) .FriendlyName( _( "Add Symbol" ) ) .Tooltip( _( "Add symbols" ) ) .Icon( BITMAPS::add_component ) .Flags( AF_ACTIVATE ) .Parameter( nullptr ) ); TOOL_ACTION EE_ACTIONS::placePower( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawing.placePowerSymbol" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'P' ) .LegacyHotkeyName( "Add Power" ) .FriendlyName( _( "Add Power" ) ) .Tooltip( _( "Add power symbols" ) ) .Icon( BITMAPS::add_power ) .Flags( AF_ACTIVATE ) .Parameter( nullptr ) ); TOOL_ACTION EE_ACTIONS::placeNoConnect( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawing.placeNoConnect" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'Q' ) .LegacyHotkeyName( "Add No Connect Flag" ) .FriendlyName( _( "Add No Connect Flag" ) ) .Tooltip( _( "Draw no-connection flags" ) ) .Icon( BITMAPS::noconn ) .Flags( AF_ACTIVATE ) .Parameter( SCH_NO_CONNECT_T ) ); TOOL_ACTION EE_ACTIONS::placeJunction( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawing.placeJunction" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'J' ) .LegacyHotkeyName( "Add Junction" ) .FriendlyName( _( "Add Junction" ) ) .Tooltip( _( "Draw junctions" ) ) .Icon( BITMAPS::add_junction ) .Flags( AF_ACTIVATE ) .Parameter( SCH_JUNCTION_T ) ); TOOL_ACTION EE_ACTIONS::placeBusWireEntry( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawing.placeBusWireEntry" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'Z' ) .LegacyHotkeyName( "Add Wire Entry" ) .FriendlyName( _( "Add Wire to Bus Entry" ) ) .Tooltip( _( "Add a wire entry to a bus" ) ) .Icon( BITMAPS::add_line2bus ) .Flags( AF_ACTIVATE ) .Parameter( SCH_BUS_WIRE_ENTRY_T ) ); TOOL_ACTION EE_ACTIONS::placeLabel( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawing.placeLabel" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'L' ) .LegacyHotkeyName( "Add Label" ) .FriendlyName( _( "Add Label" ) ) .Tooltip( _( "Draw net labels" ) ) .Icon( BITMAPS::add_label ) .Flags( AF_ACTIVATE ) ); TOOL_ACTION EE_ACTIONS::placeClassLabel( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawing.placeClassLabel" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Add Net Class Directive" ) ) .Tooltip( _( "Add net class directive labels" ) ) .Icon( BITMAPS::add_class_flag ) .Flags( AF_ACTIVATE ) ); TOOL_ACTION EE_ACTIONS::placeHierLabel( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawing.placeHierarchicalLabel" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'H' ) .LegacyHotkeyName( "Add Hierarchical Label" ) .FriendlyName( _( "Add Hierarchical Label" ) ) .Tooltip( _( "Add hierarchical labels" ) ) .Icon( BITMAPS::add_hierarchical_label ) .Flags( AF_ACTIVATE ) ); TOOL_ACTION EE_ACTIONS::drawSheet( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawing.drawSheet" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'S' ) .LegacyHotkeyName( "Add Sheet" ) .FriendlyName( _( "Add Sheet" ) ) .Tooltip( _( "Draw hierarchical sheets" ) ) .Icon( BITMAPS::add_hierarchical_subsheet ) .Flags( AF_ACTIVATE ) .Parameter( SCH_SHEET_T ) ); TOOL_ACTION EE_ACTIONS::importSheetPin( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawing.importSheetPin" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Import Sheet Pin" ) ) .Tooltip( _( "Import hierarchical sheet pins" ) ) .Icon( BITMAPS::import_hierarchical_label ) .Flags( AF_ACTIVATE ) ); TOOL_ACTION EE_ACTIONS::placeGlobalLabel( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawing.placeGlobalLabel" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_CTRL + 'L' ) .LegacyHotkeyName( "Add Global Label" ) .FriendlyName( _( "Add Global Label" ) ) .Tooltip( _( "Add global labels" ) ) .Icon( BITMAPS::add_glabel ) .Flags( AF_ACTIVATE ) ); TOOL_ACTION EE_ACTIONS::placeSchematicText( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawing.placeSchematicText" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'T' ) .LegacyHotkeyName( "Add Graphic Text" ) .FriendlyName( _( "Add Text" ) ) .Tooltip( _( "Draw text items" ) ) .Icon( BITMAPS::text ) .Flags( AF_ACTIVATE ) ); TOOL_ACTION EE_ACTIONS::drawTextBox( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawing.drawTextBox" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Add Text Box" ) ) .Tooltip( _( "Draw text box items" ) ) .Icon( BITMAPS::add_textbox ) .Flags( AF_ACTIVATE ) .Parameter( SHAPE_T::RECTANGLE ) ); TOOL_ACTION EE_ACTIONS::drawRectangle( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawing.drawRectangle" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Add Rectangle" ) ) .Tooltip( _( "Draw rectangles" ) ) .Icon( BITMAPS::add_rectangle ) .Flags( AF_ACTIVATE ) .Parameter( SHAPE_T::RECTANGLE ) ); TOOL_ACTION EE_ACTIONS::drawCircle( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawing.drawCircle" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Add Circle" ) ) .Tooltip( _( "Draw circles" ) ) .Icon( BITMAPS::add_circle ) .Flags( AF_ACTIVATE ) .Parameter( SHAPE_T::CIRCLE ) ); TOOL_ACTION EE_ACTIONS::drawArc( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawing.drawArc" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Add Arc" ) ) .Tooltip( _( "Draw arcs" ) ) .Icon( BITMAPS::add_arc ) .Flags( AF_ACTIVATE ) .Parameter( SHAPE_T::ARC ) ); TOOL_ACTION EE_ACTIONS::placeImage( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawing.placeImage" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Add Image" ) ) .Tooltip( _( "Add bitmap images" ) ) .Icon( BITMAPS::image ) .Flags( AF_ACTIVATE ) .Parameter( nullptr ) ); // SCH_EDIT_TOOL // TOOL_ACTION EE_ACTIONS::repeatDrawItem( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.repeatDrawItem" ) .Scope( AS_GLOBAL ) #ifdef __WXMAC__ .DefaultHotkey( WXK_F1 ) #else .DefaultHotkey( WXK_INSERT ) #endif .LegacyHotkeyName( "Repeat Last Item" ) .FriendlyName( _( "Repeat Last Item" ) ) .Tooltip( _( "Duplicates the last drawn item" ) ) ); TOOL_ACTION EE_ACTIONS::rotateCW( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.rotateCW" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Rotate Clockwise" ) ) .Tooltip( _( "Rotates selected item(s) clockwise" ) ) .Icon( BITMAPS::rotate_cw ) ); TOOL_ACTION EE_ACTIONS::rotateCCW( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.rotateCCW" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'R' ) .LegacyHotkeyName( "Rotate Item" ) .FriendlyName( _( "Rotate Counterclockwise" ) ) .Tooltip( _( "Rotates selected item(s) counter-clockwise" ) ) .Icon( BITMAPS::rotate_ccw ) ); TOOL_ACTION EE_ACTIONS::mirrorV( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.mirrorV" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'Y' ) .LegacyHotkeyName( "Mirror X" ) // Yes, these were backwards prior to 6.0.... .FriendlyName( _( "Mirror Vertically" ) ) .Tooltip( _( "Flips selected item(s) from top to bottom" ) ) .Icon( BITMAPS::mirror_v ) ); TOOL_ACTION EE_ACTIONS::mirrorH( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.mirrorH" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'X' ) .LegacyHotkeyName( "Mirror Y" ) // Yes, these were backwards prior to 6.0.... .FriendlyName( _( "Mirror Horizontally" ) ) .Tooltip( _( "Flips selected item(s) from left to right" ) ) .Icon( BITMAPS::mirror_h ) ); TOOL_ACTION EE_ACTIONS::swap( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.swap" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'S' ) .FriendlyName( _( "Swap" ) ) .Tooltip( _( "Swaps selected items' positions" ) ) .Icon( BITMAPS::swap ) ); TOOL_ACTION EE_ACTIONS::properties( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.properties" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'E' ) .LegacyHotkeyName( "Edit Item" ) .FriendlyName( _( "Properties..." ) ) .Tooltip( _( "Displays item properties dialog" ) ) .Icon( BITMAPS::edit ) ); TOOL_ACTION EE_ACTIONS::editReference( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.editReference" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'U' ) .LegacyHotkeyName( "Edit Symbol Reference" ) .FriendlyName( _( "Edit Reference Designator..." ) ) .Tooltip( _( "Displays reference designator dialog" ) ) .Icon( BITMAPS::edit_comp_ref ) ); TOOL_ACTION EE_ACTIONS::editValue( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.editValue" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'V' ) .LegacyHotkeyName( "Edit Symbol Value" ) .FriendlyName( _( "Edit Value..." ) ) .Tooltip( _( "Displays value field dialog" ) ) .Icon( BITMAPS::edit_comp_value ) ); TOOL_ACTION EE_ACTIONS::editFootprint( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.editFootprint" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'F' ) .LegacyHotkeyName( "Edit Symbol Footprint" ) .FriendlyName( _( "Edit Footprint..." ) ) .Tooltip( _( "Displays footprint field dialog" ) ) .Icon( BITMAPS::edit_comp_footprint ) ); TOOL_ACTION EE_ACTIONS::autoplaceFields( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.autoplaceFields" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'O' ) .LegacyHotkeyName( "Autoplace Fields" ) .FriendlyName( _( "Autoplace Fields" ) ) .Tooltip( _( "Runs the automatic placement algorithm on the symbol or sheet's fields" ) ) .Icon( BITMAPS::autoplace_fields ) ); TOOL_ACTION EE_ACTIONS::changeSymbols( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.changeSymbols" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Change Symbols..." ) ) .Tooltip( _( "Assign different symbols from the library" ) ) .Icon( BITMAPS::exchange ) ); TOOL_ACTION EE_ACTIONS::updateSymbols( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.updateSymbols" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Update Symbols from Library..." ) ) .Tooltip( _( "Update symbols to include any changes from the library" ) ) .Icon( BITMAPS::refresh ) ); TOOL_ACTION EE_ACTIONS::changeSymbol( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.changeSymbol" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Change Symbol..." ) ) .Tooltip( _( "Assign a different symbol from the library" ) ) .Icon( BITMAPS::exchange ) ); TOOL_ACTION EE_ACTIONS::updateSymbol( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.updateSymbol" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Update Symbol..." ) ) .Tooltip( _( "Update symbol to include any changes from the library" ) ) .Icon( BITMAPS::refresh ) ); TOOL_ACTION EE_ACTIONS::assignNetclass( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.assignNetclass" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Assign Netclass..." ) ) .Tooltip( _( "Assign a netclass to nets matching a pattern" ) ) .Icon( BITMAPS::netlist ) ); TOOL_ACTION EE_ACTIONS::toggleDeMorgan( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.toggleDeMorgan" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "De Morgan Conversion" ) ) .Tooltip( _( "Switch between De Morgan representations" ) ) .Icon( BITMAPS::morgan2 ) ); TOOL_ACTION EE_ACTIONS::showDeMorganStandard( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.showDeMorganStandard" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "De Morgan Standard" ) ) .Tooltip( _( "Switch to standard De Morgan representation" ) ) .Icon( BITMAPS::morgan1 ) ); TOOL_ACTION EE_ACTIONS::showDeMorganAlternate( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.showDeMorganAlternate" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "De Morgan Alternate" ) ) .Tooltip( _( "Switch to alternate De Morgan representation" ) ) .Icon( BITMAPS::morgan2 ) ); TOOL_ACTION EE_ACTIONS::toLabel( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.toLabel" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Change to Label" ) ) .Tooltip( _( "Change existing item to a label" ) ) .Icon( BITMAPS::add_line_label ) .Flags( AF_NONE ) .Parameter( SCH_LABEL_T ) ); TOOL_ACTION EE_ACTIONS::toCLabel( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.toCLabel" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Change to Directive Label" ) ) .Tooltip( _( "Change existing item to a directive label" ) ) .Icon( BITMAPS::add_class_flag ) .Flags( AF_NONE ) .Parameter( SCH_DIRECTIVE_LABEL_T ) ); TOOL_ACTION EE_ACTIONS::toHLabel( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.toHLabel" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Change to Hierarchical Label" ) ) .Tooltip( _( "Change existing item to a hierarchical label" ) ) .Icon( BITMAPS::add_hierarchical_label ) .Flags( AF_NONE ) .Parameter( SCH_HIER_LABEL_T ) ); TOOL_ACTION EE_ACTIONS::toGLabel( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.toGLabel" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Change to Global Label" ) ) .Tooltip( _( "Change existing item to a global label" ) ) .Icon( BITMAPS::add_glabel ) .Flags( AF_NONE ) .Parameter( SCH_GLOBAL_LABEL_T ) ); TOOL_ACTION EE_ACTIONS::toText( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.toText" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Change to Text" ) ) .Tooltip( _( "Change existing item to a text comment" ) ) .Icon( BITMAPS::text ) .Flags( AF_NONE ) .Parameter( SCH_TEXT_T ) ); TOOL_ACTION EE_ACTIONS::toTextBox( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.toTextBox" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Change to Text Box" ) ) .Tooltip( _( "Change existing item to a text box" ) ) .Icon( BITMAPS::add_textbox ) .Flags( AF_NONE ) .Parameter( SCH_TEXTBOX_T ) ); TOOL_ACTION EE_ACTIONS::cleanupSheetPins( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.cleanupSheetPins" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Cleanup Sheet Pins" ) ) .Tooltip( _( "Delete unreferenced sheet pins" ) ) ); TOOL_ACTION EE_ACTIONS::editTextAndGraphics( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.editTextAndGraphics" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Edit Text & Graphics Properties..." ) ) .Tooltip( _( "Edit text and graphics properties globally across schematic" ) ) .Icon( BITMAPS::text ) ); TOOL_ACTION EE_ACTIONS::symbolProperties( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.symbolProperties" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Symbol Properties..." ) ) .Tooltip( _( "Displays symbol properties dialog" ) ) .Icon( BITMAPS::part_properties ) ); TOOL_ACTION EE_ACTIONS::pinTable( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.pinTable" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Pin Table..." ) ) .Tooltip( _( "Displays pin table for bulk editing of pins" ) ) .Icon( BITMAPS::pin_table ) ); TOOL_ACTION EE_ACTIONS::breakWire( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.breakWire" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Break" ) ) .Tooltip( _( "Divide into connected segments" ) ) .Icon( BITMAPS::break_line ) ); TOOL_ACTION EE_ACTIONS::slice( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveEdit.slice" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Slice" ) ) .Tooltip( _( "Divide into unconnected segments" ) ) .Icon( BITMAPS::slice_line ) ); // SCH_EDITOR_CONTROL // TOOL_ACTION EE_ACTIONS::restartMove( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.restartMove" ) .Scope( AS_GLOBAL ) ); TOOL_ACTION EE_ACTIONS::highlightNet( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.highlightNet" ) .Scope( AS_GLOBAL ) .DefaultHotkey( '`' ) .FriendlyName( _( "Highlight Net" ) ) .Tooltip( _( "Highlight net under cursor" ) ) .Icon( BITMAPS::net_highlight_schematic ) ); TOOL_ACTION EE_ACTIONS::clearHighlight( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.clearHighlight" ) .Scope( AS_GLOBAL ) .DefaultHotkey( '~' ) .FriendlyName( _( "Clear Net Highlighting" ) ) .Tooltip( _( "Clear any existing net highlighting" ) ) ); TOOL_ACTION EE_ACTIONS::updateNetHighlighting( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.updateNetHighlighting" ) .Scope( AS_GLOBAL ) ); TOOL_ACTION EE_ACTIONS::highlightNetTool( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.highlightNetTool" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Highlight Nets" ) ) .Tooltip( _( "Highlight wires and pins of a net" ) ) .Icon( BITMAPS::net_highlight_schematic ) .Flags( AF_ACTIVATE ) ); TOOL_ACTION EE_ACTIONS::showNetNavigator( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.showNetNavigator" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Show Net Navigator" ) ) .Tooltip( _( "Toggle the net navigator panel visibility" ) ) ); TOOL_ACTION EE_ACTIONS::editWithLibEdit( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.editWithSymbolEditor" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_CTRL + 'E' ) .LegacyHotkeyName( "Edit with Symbol Editor" ) .FriendlyName( _( "Edit with Symbol Editor" ) ) .Tooltip( _( "Open the selected symbol in the Symbol Editor" ) ) .Icon( BITMAPS::libedit ) ); TOOL_ACTION EE_ACTIONS::setExcludeFromBOM( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.setExcludeFromBOM" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Exclude from Bill of Materials" ) ) .Tooltip( _( "Set the exclude from bill of materials attribute" ) ) ); TOOL_ACTION EE_ACTIONS::unsetExcludeFromBOM( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.unsetExcludeFromBOM" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Include in Bill of Materials" ) ) .Tooltip( _( "Clear the exclude from bill of materials attribute" ) ) ); TOOL_ACTION EE_ACTIONS::toggleExcludeFromBOM( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.toggleExcludeFromBOM" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Toggle Exclude from Bill of Materials" ) ) .Tooltip( _( "Toggle the exclude from bill of materials attribute" ) ) ); TOOL_ACTION EE_ACTIONS::setExcludeFromSimulation( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.setExcludeFromSimulation" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Exclude from Simulation" ) ) .Tooltip( _( "Set the exclude from simulation attribute" ) ) ); TOOL_ACTION EE_ACTIONS::unsetExcludeFromSimulation( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.unsetExcludeFromSimulation" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Include in Simulation" ) ) .Tooltip( _( "Clear the exclude from simulation attribute" ) ) ); TOOL_ACTION EE_ACTIONS::toggleExcludeFromSimulation( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.toggleExcludeFromSimulation" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Toggle Exclude from Simulation" ) ) .Tooltip( _( "Toggle the exclude from simulation attribute" ) ) ); TOOL_ACTION EE_ACTIONS::setExcludeFromBoard( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.setExcludeFromBoard" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Exclude from Board" ) ) .Tooltip( _( "Set the exclude from board attribute" ) ) ); TOOL_ACTION EE_ACTIONS::unsetExcludeFromBoard( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.unsetExcludeFromBoard" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Include on Board" ) ) .Tooltip( _( "Clear the exclude from board attribute" ) ) ); TOOL_ACTION EE_ACTIONS::toggleExcludeFromBoard( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.toggleExcludeFromBoard" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Toggle Exclude from Board" ) ) .Tooltip( _( "Toggle the exclude from board attribute" ) ) ); TOOL_ACTION EE_ACTIONS::setDNP( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.setDNP" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Set Do Not Populate" ) ) .Tooltip( _( "Set the do not populate attribute" ) ) ); TOOL_ACTION EE_ACTIONS::unsetDNP( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.unsetDNP" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Unset Do Not Populate" ) ) .Tooltip( _( "Clear the do not populate attribute" ) ) ); TOOL_ACTION EE_ACTIONS::toggleDNP( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.toggleDNP" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_CTRL + MD_ALT + 'X' ) .FriendlyName( _( "Toggle Do Not Populate" ) ) .Tooltip( _( "Toggle the do not populate attribute" ) ) ); TOOL_ACTION EE_ACTIONS::editLibSymbolWithLibEdit( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.editLibSymbolWithSymbolEditor" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_CTRL + MD_SHIFT + 'E' ) .FriendlyName( _( "Edit Library Symbol..." ) ) .Tooltip( _( "Open the library symbol in the Symbol Editor" ) ) .Icon( BITMAPS::libedit ) ); TOOL_ACTION EE_ACTIONS::editSymbolFields( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.editSymbolFields" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Edit Symbol Fields..." ) ) .Tooltip( _( "Bulk-edit fields of all symbols in schematic" ) ) .Icon( BITMAPS::spreadsheet ) ); TOOL_ACTION EE_ACTIONS::editSymbolLibraryLinks( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.editSymbolLibraryLinks" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Edit Symbol Library Links..." ) ) .Tooltip( _( "Edit links between schematic and library symbols" ) ) .Icon( BITMAPS::edit_cmp_symb_links ) ); TOOL_ACTION EE_ACTIONS::assignFootprints( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.assignFootprints" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Assign Footprints..." ) ) .Tooltip( _( "Run footprint assignment tool" ) ) .Icon( BITMAPS::icon_cvpcb_24 ) ); TOOL_ACTION EE_ACTIONS::importFPAssignments( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.importFPAssignments" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Import Footprint Assignments..." ) ) .Tooltip( _( "Import symbol footprint assignments from .cmp file created by board editor" ) ) .Icon( BITMAPS::import_footprint_names ) ); TOOL_ACTION EE_ACTIONS::annotate( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.annotate" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Annotate Schematic..." ) ) .Tooltip( _( "Fill in schematic symbol reference designators" ) ) .Icon( BITMAPS::annotate ) ); TOOL_ACTION EE_ACTIONS::schematicSetup( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.schematicSetup" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Schematic Setup..." ) ) .Tooltip( _( "Edit schematic setup including annotation styles and electrical rules" ) ) .Icon( BITMAPS::options_schematic ) ); TOOL_ACTION EE_ACTIONS::editPageNumber( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.editPageNumber" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Edit Sheet Page Number..." ) ) .Tooltip( _( "Edit the page number of the current or selected sheet" ) ) ); TOOL_ACTION EE_ACTIONS::rescueSymbols( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.rescueSymbols" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Rescue Symbols..." ) ) .Tooltip( _( "Find old symbols in project and rename/rescue them" ) ) .Icon( BITMAPS::rescue ) ); TOOL_ACTION EE_ACTIONS::remapSymbols( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.remapSymbols" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Remap Legacy Library Symbols..." ) ) .Tooltip( _( "Remap library symbol references in legacy schematics to the symbol library table" ) ) .Icon( BITMAPS::rescue ) ); TOOL_ACTION EE_ACTIONS::drawSheetOnClipboard( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.drawSheetOnClipboard" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Export Drawing to Clipboard" ) ) .Tooltip( _( "Export drawing of current sheet to clipboard" ) ) .Icon( BITMAPS::copy ) ); TOOL_ACTION EE_ACTIONS::importGraphics( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.importGraphics" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_SHIFT + MD_CTRL + 'F' ) .LegacyHotkeyName( "Place DXF" ) .FriendlyName( _( "Import Graphics..." ) ) .Tooltip( _( "Import 2D drawing file" ) ) .Icon( BITMAPS::import_vector ) .Flags( AF_ACTIVATE ) ); TOOL_ACTION EE_ACTIONS::showPcbNew( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.showPcbNew" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Switch to PCB Editor" ) ) .Tooltip( _( "Open PCB in board editor" ) ) .Icon( BITMAPS::icon_pcbnew_24 ) ); TOOL_ACTION EE_ACTIONS::exportNetlist( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.exportNetlist" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Export Netlist..." ) ) .Tooltip( _( "Export file containing netlist in one of several formats" ) ) .Icon( BITMAPS::netlist ) ); TOOL_ACTION EE_ACTIONS::generateBOM( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.generateBOM" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Generate Bill of Materials..." ) ) .Tooltip( _( "Generate a bill of materials for the current schematic" ) ) .Icon( BITMAPS::post_bom ) ); TOOL_ACTION EE_ACTIONS::generateBOMLegacy( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.generateBOMLegacy" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Generate Legacy Bill of Materials..." ) ) .Tooltip( _( "Generate a bill of materials for the current schematic (Legacy Generator)" ) ) ); TOOL_ACTION EE_ACTIONS::generateBOMExternal( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.generateBOMExternal" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Generate Bill of Materials (External)..." ) ) .Tooltip( _( "Generate a bill of materials for the current schematic using external generator" ) ) ); TOOL_ACTION EE_ACTIONS::exportSymbolsToLibrary( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.exportSymbolsToLibrary" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Export Symbols to Library..." ) ) .Tooltip( _( "Add symbols used in schematic to an existing symbol library\n" "(does not remove other symbols from this library)" ) ) .Icon( BITMAPS::library_archive ) ); TOOL_ACTION EE_ACTIONS::exportSymbolsToNewLibrary( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.exportSymbolsToNewLibrary" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Export Symbols to New Library..." ) ) .Tooltip( _( "Create a new symbol library using the symbols used in the schematic\n" "(if the library already exists it will be replaced)" ) ) .Icon( BITMAPS::library_archive_as ) ); TOOL_ACTION EE_ACTIONS::selectOnPCB( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.selectOnPCB" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Select on PCB" ) ) .Tooltip( _( "Select corresponding items in PCB editor" ) ) .Icon( BITMAPS::select_same_sheet ) ); TOOL_ACTION EE_ACTIONS::toggleHiddenPins( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.showHiddenPins" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Show Hidden Pins" ) ) .Tooltip( _( "Toggle display of hidden pins" ) ) .Icon( BITMAPS::hidden_pin ) ); TOOL_ACTION EE_ACTIONS::toggleHiddenFields( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.showHiddenFields" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Show Hidden Fields" ) ) .Tooltip( _( "Toggle display of hidden text fields" ) ) ); TOOL_ACTION EE_ACTIONS::toggleDirectiveLabels( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.showDirectiveLabels" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Show Directive Labels" ) ) .Tooltip( _( "Toggle display of directive labels" ) ) ); TOOL_ACTION EE_ACTIONS::toggleERCWarnings( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.showERCWarnings" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Show ERC Warnings" ) ) .Tooltip( _( "Show markers for electrical rules checker warnings" ) ) ); TOOL_ACTION EE_ACTIONS::toggleERCErrors( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.showERCErrors" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Show ERC Errors" ) ) .Tooltip( _( "Show markers for electrical rules checker errors" ) ) ); TOOL_ACTION EE_ACTIONS::toggleERCExclusions( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.showERCExclusions" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Show ERC Exclusions" ) ) .Tooltip( _( "Show markers for excluded electrical rules checker violations" ) ) ); TOOL_ACTION EE_ACTIONS::toggleOPVoltages( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.showOperatingPointVoltages" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Show OP Voltages" ) ) .Tooltip( _( "Show operating point voltage data from simulation" ) ) ); TOOL_ACTION EE_ACTIONS::toggleOPCurrents( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.showOperatingPointCurrents" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Show OP Currents" ) ) .Tooltip( _( "Show operating point current data from simulation" ) ) ); TOOL_ACTION EE_ACTIONS::lineModeFree( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.lineModeFree" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Line Mode for Wires and Buses" ) ) .Tooltip( _( "Draw and drag at any angle" ) ) .Icon( BITMAPS::lines_any ) .Flags( AF_NONE ) .Parameter( LINE_MODE::LINE_MODE_FREE ) ); TOOL_ACTION EE_ACTIONS::lineMode90( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.lineModeOrthonal" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Line Mode for Wires and Buses" ) ) .Tooltip( _( "Constrain drawing and dragging to horizontal or vertical motions" ) ) .Icon( BITMAPS::lines90 ) .Flags( AF_NONE ) .Parameter( LINE_MODE::LINE_MODE_90) ); TOOL_ACTION EE_ACTIONS::lineMode45( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.lineMode45" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Line Mode for Wires and Buses" ) ) .Tooltip( _( "Constrain drawing and dragging to horizontal, vertical, or 45-degree angle motions" ) ) .Icon( BITMAPS::hv45mode ) .Flags( AF_NONE ) .Parameter( LINE_MODE::LINE_MODE_45 ) ); TOOL_ACTION EE_ACTIONS::lineModeNext( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.lineModeNext" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_SHIFT + WXK_SPACE ) .FriendlyName( _( "Line Mode for Wires and Buses" ) ) .Tooltip( _( "Switch to next line mode" ) ) ); TOOL_ACTION EE_ACTIONS::toggleAnnotateAuto( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.annotateAutomatically" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Annotate Automatically" ) ) .Tooltip( _( "Toggle automatic annotation of new symbols" ) ) .Icon( BITMAPS::annotate ) ); TOOL_ACTION EE_ACTIONS::repairSchematic( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.repairSchematic" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Repair Schematic" ) ) .Tooltip( _( "Run various diagnostics and attempt to repair schematic" ) ) .Icon( BITMAPS::rescue ) ); // Python Console TOOL_ACTION EE_ACTIONS::showPythonConsole( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.showPythonConsole" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Scripting Console" ) ) .Tooltip( _( "Show the Python scripting console" ) ) .Icon( BITMAPS::py_script ) ); // SCH_NAVIGATE_TOOL // TOOL_ACTION EE_ACTIONS::changeSheet( TOOL_ACTION_ARGS() .Name( "eeschema.NavigateTool.changeSheet" ) .Scope( AS_CONTEXT ) .FriendlyName( _( "Change Sheet" ) ) .Tooltip( _( "Change to provided sheet's contents in the schematic editor" ) ) .Icon( BITMAPS::enter_sheet ) ); TOOL_ACTION EE_ACTIONS::enterSheet( TOOL_ACTION_ARGS() .Name( "eeschema.NavigateTool.enterSheet" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Enter Sheet" ) ) .Tooltip( _( "Display the selected sheet's contents in the schematic editor" ) ) .Icon( BITMAPS::enter_sheet ) ); TOOL_ACTION EE_ACTIONS::leaveSheet( TOOL_ACTION_ARGS() .Name( "eeschema.NavigateTool.leaveSheet" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_ALT + WXK_BACK ) .LegacyHotkeyName( "Leave Sheet" ) .FriendlyName( _( "Leave Sheet" ) ) .Tooltip( _( "Display the parent sheet in the schematic editor" ) ) .Icon( BITMAPS::leave_sheet ) ); TOOL_ACTION EE_ACTIONS::navigateUp( TOOL_ACTION_ARGS() .Name( "eeschema.NavigateTool.up" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_ALT + WXK_UP ) .FriendlyName( _( "Navigate Up" ) ) .Tooltip( _( "Navigate up one sheet in the hierarchy" ) ) .Icon( BITMAPS::up ) ); TOOL_ACTION EE_ACTIONS::navigateBack( TOOL_ACTION_ARGS() .Name( "eeschema.NavigateTool.back" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_ALT + WXK_LEFT ) .FriendlyName( _( "Navigate Back" ) ) .Tooltip( _( "Move backward in sheet navigation history" ) ) .Icon( BITMAPS::left ) ); TOOL_ACTION EE_ACTIONS::navigateForward( TOOL_ACTION_ARGS() .Name( "eeschema.NavigateTool.forward" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_ALT + WXK_RIGHT ) .FriendlyName( _( "Navigate Forward" ) ) .Tooltip( _( "Move forward in sheet navigation history" ) ) .Icon( BITMAPS::right ) ); TOOL_ACTION EE_ACTIONS::navigatePrevious( TOOL_ACTION_ARGS() .Name( "eeschema.NavigateTool.previous" ) .Scope( AS_GLOBAL ) .DefaultHotkey( WXK_PAGEUP ) .FriendlyName( _( "Previous Sheet" ) ) .Tooltip( _( "Move to previous sheet by number" ) ) .Icon( BITMAPS::left ) ); TOOL_ACTION EE_ACTIONS::navigateNext( TOOL_ACTION_ARGS() .Name( "eeschema.NavigateTool.next" ) .Scope( AS_GLOBAL ) .DefaultHotkey( WXK_PAGEDOWN ) .FriendlyName( _( "Next Sheet" ) ) .Tooltip( _( "Move to next sheet by number" ) ) .Icon( BITMAPS::right ) ); TOOL_ACTION EE_ACTIONS::showHierarchy( TOOL_ACTION_ARGS() .Name( "eeschema.EditorTool.showHierarchy" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_CTRL + 'H' ) .FriendlyName( _( "Hierarchy Navigator" ) ) .Tooltip( _( "Show or hide the schematic sheet hierarchy navigator" ) ) .Icon( BITMAPS::hierarchy_nav ) ); // SCH_LINE_WIRE_BUS_TOOL // const DRAW_SEGMENT_EVENT_PARAMS drawWireActionParam = { LAYER_WIRE, false, nullptr }; TOOL_ACTION EE_ACTIONS::drawWire( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawingLineWireBus.drawWires" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'W' ) .LegacyHotkeyName( "Begin Wire" ) .FriendlyName( _( "Add Wire" ) ) .Tooltip( _( "Add a wire" ) ) .Icon( BITMAPS::add_line ) .Flags( AF_ACTIVATE ) .Parameter( &drawWireActionParam ) ); const DRAW_SEGMENT_EVENT_PARAMS drawBusActionParam = { LAYER_BUS, false, nullptr }; TOOL_ACTION EE_ACTIONS::drawBus( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawingLineWireBus.drawBuses" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'B' ) .LegacyHotkeyName( "Begin Bus" ) .FriendlyName( _( "Add Bus" ) ) .Tooltip( _( "Add a bus" ) ) .Icon( BITMAPS::add_bus ) .Flags( AF_ACTIVATE ) .Parameter( &drawBusActionParam ) ); TOOL_ACTION EE_ACTIONS::unfoldBus( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawingLineWireBus.unfoldBus" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'C' ) .LegacyHotkeyName( "Unfold from Bus" ) .FriendlyName( _( "Unfold from Bus" ) ) .Tooltip( _( "Break a wire out of a bus" ) ) .Icon( BITMAPS::INVALID_BITMAP ) .Flags( AF_ACTIVATE ) .Parameter( nullptr ) ); const DRAW_SEGMENT_EVENT_PARAMS drawLinesActionParam = { LAYER_NOTES, false, nullptr }; TOOL_ACTION EE_ACTIONS::drawLines( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawingLineWireBus.drawLines" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'I' ) .LegacyHotkeyName( "Add Graphic PolyLine" ) .FriendlyName( _( "Add Lines" ) ) .Tooltip( _( "Draw graphic lines" ) ) .Icon( BITMAPS::add_graphical_segments ) .Flags( AF_ACTIVATE ) .Parameter( &drawLinesActionParam ) ); TOOL_ACTION EE_ACTIONS::undoLastSegment( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawingLineWireBus.undoLastSegment") .Scope( AS_GLOBAL ) .DefaultHotkey( WXK_BACK ) .FriendlyName( _( "Undo Last Segment" ) ) .Tooltip( _( "Walks the current line back one segment." ) ) .Icon( BITMAPS::undo ) ); TOOL_ACTION EE_ACTIONS::switchSegmentPosture( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveDrawingLineWireBus.switchPosture" ) .Scope( AS_GLOBAL ) .DefaultHotkey( '/' ) .FriendlyName( _( "Switch Segment Posture" ) ) .Tooltip( _( "Switches posture of the current segment." ) ) .Icon( BITMAPS::change_entry_orient ) .Flags( AF_NONE ) ); // SCH_MOVE_TOOL // TOOL_ACTION EE_ACTIONS::move( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveMove.move" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'M' ) .LegacyHotkeyName( "Move Item" ) .FriendlyName( _( "Move" ) ) .Tooltip( _( "Moves the selected item(s)" ) ) .Icon( BITMAPS::move ) .Flags( AF_ACTIVATE ) ); TOOL_ACTION EE_ACTIONS::drag( TOOL_ACTION_ARGS() .Name( "eeschema.InteractiveMove.drag" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'G' ) .LegacyHotkeyName( "Drag Item" ) .FriendlyName( _( "Drag" ) ) .Tooltip( _( "Drags the selected item(s)" ) ) .Icon( BITMAPS::move ) .Flags( AF_ACTIVATE ) ); TOOL_ACTION EE_ACTIONS::alignToGrid( TOOL_ACTION_ARGS() .Name( "eeschema.AlignToGrid" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Align Elements to Grid" ) ) .Icon( BITMAPS::move ) .Flags( AF_ACTIVATE ) ); // Schematic editor save copy curr sheet command TOOL_ACTION EE_ACTIONS::saveCurrSheetCopyAs( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.saveCurrSheetCopyAs" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Save Current Sheet Copy As..." ) ) .Tooltip( _( "Save a copy of the current sheet to another location or name" ) ) .Icon( BITMAPS::save_as ) ); // Drag and drop TOOL_ACTION EE_ACTIONS::ddAppendFile( TOOL_ACTION_ARGS() .Name( "eeschema.EditorControl.ddAppendFile" ) .Scope( AS_GLOBAL ) ); // SIMULATOR TOOL_ACTION EE_ACTIONS::newAnalysisTab( TOOL_ACTION_ARGS() .Name( "eeschema.Simulation.newAnalysisTab" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_CTRL + 'N' ) .LegacyHotkeyName( "New" ) .FriendlyName( _( "New Analysis Tab..." ) ) .Icon( BITMAPS::sim_add_plot ) ); TOOL_ACTION EE_ACTIONS::openWorkbook( TOOL_ACTION_ARGS() .Name( "eeschema.Simulation.openWorkbook" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_CTRL + 'O' ) .LegacyHotkeyName( "Open" ) .FriendlyName( _( "Open Workbook..." ) ) .Icon( BITMAPS::directory_open ) ); TOOL_ACTION EE_ACTIONS::saveWorkbook( TOOL_ACTION_ARGS() .Name( "eeschema.Simulation.saveWorkbook" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_CTRL + 'S' ) .LegacyHotkeyName( "Save" ) .FriendlyName( _( "Save Workbook" ) ) .Icon( BITMAPS::save ) ); TOOL_ACTION EE_ACTIONS::saveWorkbookAs( TOOL_ACTION_ARGS() .Name( "eeschema.Simulation.saveWorkbookAs" ) .Scope( AS_GLOBAL ) .DefaultHotkey( MD_SHIFT + MD_CTRL + 'S' ) .LegacyHotkeyName( "Save As" ) .FriendlyName( _( "Save Workbook As..." ) ) .Icon( BITMAPS::sim_add_signal ) ); TOOL_ACTION EE_ACTIONS::exportPlotAsPNG( TOOL_ACTION_ARGS() .Name( "eeschema.Simulator.exportPNG" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Export Current Plot as PNG..." ) ) .Icon( BITMAPS::export_png ) ); TOOL_ACTION EE_ACTIONS::exportPlotAsCSV( TOOL_ACTION_ARGS() .Name( "eeschema.Simulator.exportCSV" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Export Current Plot as CSV..." ) ) .Icon( BITMAPS::export_file ) ); TOOL_ACTION EE_ACTIONS::toggleLegend( TOOL_ACTION_ARGS() .Name( "eeschema.Simulator.toggleLegend" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Show Legend" ) ) .Icon( BITMAPS::text ) ); TOOL_ACTION EE_ACTIONS::toggleDottedSecondary( TOOL_ACTION_ARGS() .Name( "eeschema.Simulator.toggleDottedSecondary" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Dotted Current/Phase" ) ) .Tooltip( _( "Draw secondary signal trace (current or phase) with a dotted line" ) ) ); TOOL_ACTION EE_ACTIONS::toggleDarkModePlots( TOOL_ACTION_ARGS() .Name( "eeschema.Simulator.toggleDarkModePlots" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Dark Mode Plots" ) ) .Tooltip( _( "Draw plots with a black background" ) ) ); TOOL_ACTION EE_ACTIONS::simAnalysisProperties( TOOL_ACTION_ARGS() .Name( "eeschema.Simulation.simAnalysisProperties" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Edit Analysis Tab..." ) ) .Tooltip( _( "Edit the SPICE command and plot setup for the current analysis tab" ) ) .Icon( BITMAPS::sim_command ) ); TOOL_ACTION EE_ACTIONS::runSimulation( TOOL_ACTION_ARGS() .Name( "eeschema.Simulation.runSimulation" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'R' ) .FriendlyName( _( "Run Simulation" ) ) .Icon( BITMAPS::sim_run ) ); TOOL_ACTION EE_ACTIONS::stopSimulation( TOOL_ACTION_ARGS() .Name( "eeschema.Simulation.stopSimulation" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Stop Simulation" ) ) .Icon( BITMAPS::sim_stop ) ); TOOL_ACTION EE_ACTIONS::simProbe( TOOL_ACTION_ARGS() .Name( "eeschema.Simulation.probe" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'P' ) .FriendlyName( _( "Probe Schematic..." ) ) .Tooltip( _( "Add a simulator probe" ) ) .Icon( BITMAPS::sim_probe ) ); TOOL_ACTION EE_ACTIONS::simTune( TOOL_ACTION_ARGS() .Name( "eeschema.Simulation.tune" ) .Scope( AS_GLOBAL ) .DefaultHotkey( 'T' ) .FriendlyName( _( "Add Tuned Value..." ) ) .Tooltip( _( "Select a value to be tuned" ) ) .Icon( BITMAPS::sim_tune ) ); TOOL_ACTION EE_ACTIONS::editUserDefinedSignals( TOOL_ACTION_ARGS() .Name( "eeschema.Simulation.editUserDefinedSignals" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "User-defined Signals..." ) ) .Tooltip( _( "Add, edit or delete user-defined simulation signals" ) ) .Icon( BITMAPS::sim_add_signal ) ); TOOL_ACTION EE_ACTIONS::showNetlist( TOOL_ACTION_ARGS() .Name( "eeschema.Simulation.showNetlist" ) .Scope( AS_GLOBAL ) .FriendlyName( _( "Show SPICE Netlist" ) ) .Icon( BITMAPS::netlist ) );