====== Main menu ======
Here is a list of menu items available in all plugins. Note that some menu categories (**Tools**, **Conversion**, **Transformations**, **Synthesis**, and **Verification** ) can be extended by plugins to include model-specific tools. If a menu category is empty it does not sow in the menu.
===== File =====
* **Create work...** Ctrl-N -- create a new work selecting a type of model to capture.
* **Open work...** Ctrl-O -- load an existing work from a file.
* **Open recent** -- load a work from one of the recently opened files.
* **Merge work...** -- merge a model from external file into the current work.
----
* **Save work** Ctrl-S -- write the current work into a file.
* **Save work as...** -- save the current work in a new file.
* **Close active work** -- close the currently active work.
* **Close all works** -- close all the works.
----
* **Import...** -- import a model from external file (ASTG, LPN, Verilog, GenLib and Concepts formats).
* **Export** -- export the current work into an external file (ASTG, DOT, SVG, PS and PDF format).
----
* **New workspace** -- create a new workspace (//this feature is under development//).
* **Open workspace...** -- load a previously saved workspace (//this feature is under development//).
* **Link files to the root of workspace** -- convert absolute path of the works into relative to the root of the workspace (//this feature is under development//).
* **Save workspace** -- write the current workspace into a file (//this feature is under development//).
* **Save workspace as...** -- save the current workspace in a new file (//this feature is under development//).
----
* **Switch to console mode** -- shut down GUI and switch into console mode.
----
* **Exit** Alt-F4 -- close all the works and quit the program.
===== Edit =====
* **Undo** Ctrl-Z -- undo the last modification in the current work.
* **Redo** Ctrl-Shit-Z -- redo a previously undone modification in the current work.
----
* **Cut** Ctrl-X -- remove selected nodes and connections and put them into the local clipboard.
* **Copy** Ctrl-C -- copy selected nodes and connections into a local clipboard.
* **Paste** Ctrl-V -- paste a nodes and connections from the local clipboard into the current work.
* **Delete** Delete -- remove selected nodes and connections.
----
* **Select all** Ctrl-A -- select the entire work.
* **Inverse selection** Ctrl-I -- inverse the selection.
* **Deselect** -- reset selection.
----
* **Preferences...** -- edit the global settings for generic and plugin-specific properties. See [[help:core:preferences|Global preferences]] for details.
===== View =====
* **Zoom in** Ctrl-= -- zoom in the current work by one step ((8 zoom steps change the scale twofold)).
* **Zoom out** Ctrl-Minus -- zoom out the current work by one step ((8 zoom steps change the scale twofold)).
* **Default zoom** Ctrl-0 -- restore the default scale of the current work.
* **Fit selection to the screen** (Ctrl-F) -- scale and pan the current work so that its selected objects (or the whole model if nothing is selected) fill the editor panel.
----
* **Centre selection** Ctrl-T -- pan the current work so that its selected objects (or the whole model if nothing is selected) position in the centre of the editor panel.
* **Pan left** Ctrl-Left -- pan the editor panel left.
* **Pan up** Ctrl-Up -- pan the editor panel up.
* **Pan right** Ctrl-Right -- pan the editor panel right.
* **Pan down** Ctrl-Down -- pan the editor panel down.
----
* **Toolbars** -- show/hide the toolbars (**Global**, **Model tools**, **Tool control**).
* **Windows** -- show/hide the tabs and panels (**Output**, **Problems**, **Javascript**, **Tasks**, **Property editor**, **Tool controls**, **Workspace**).
* **Reset UI layout** -- revert the user interface to the original state.
===== Tools =====
* **Graph layout** -- tools for automated layout of the graph models.
* **Graphviz DOT** -- apply Graphviz DOT tool to layout the current work.
* **Random** -- assign random coordinates to all the nodes, make all connections one-segment polyline.
Plugins can add model-specific tools here if they do not fit other specialised categories.
===== Conversion =====
Plugins can add model-specific tools here for conversion between models.
===== Transformations =====
* **Contract selected nodes** -- remove each selected node and connect its preset to its postset.
* **Set component labels from their unique names** -- copy node unique IDs into their label properties.
Plugins can add model-specific tools here for local modifications of the model.
===== Synthesis =====
Plugins can add model-specific tools here for logic synthesis.
===== Verification =====
Plugins can add model-specific tools here for formal verification.
===== Help =====
* **Overview** -- overview of Workcraft supported models and interaction among them.
* **Help contents** F1 -- table of contents for Workcraft generic information and details of its model plugins.
* **Tutorials** -- a list of tutorials in a browser.
----
* **Report a bug at GitHub** -- a GitHub page to report an issues with Workcraft.
* **Contact developers by e-mail** -- send a message to Workcraft developers by e-mail.
----
* **About Workcraft** -- brief information about Workcraft, its version number and the homepage.