Interface Customization

Introduction
The FreeCAD interface is based on the modern Qt toolkit and has a state-of-the-art organization. Some aspects of the interface can be customized. You can, for example, add custom toolbars, with tools from several workbenches or tools defined in macros, and you can create you own keyboard shortcuts. But the menus and default toolbars that come with FreeCAD and its workbenches cannot be changed.



Usage

 * 1) The tools available in the Customize dialog box depend on the workbenches that have been loaded in the current FreeCAD session.  So you should load all workbenches whose tools you want to have access to.
 * 2) If you want to add a custom toolbar switch back to the workbench you want to add the toolbar to.
 * 3) There are several ways to invoke the command:
 * 4) * Select the option from the menu.
 * 5) * Right-click a toolbar area and choose from the context menu.
 * 6) The Customize dialog box opens. For more information see Options.
 * 7) Press the  button to close the dialog box.
 * 8) The  button does not work at this time.

Options
In the Customize dialog box the following tabs are available:

Commands


On this tab you can browse the available commands.

Browse commands

 * 1) Select a command category in the Category panel on the left. Some categories match menu entries.
 * 2) The tools available in the selected category are shown in the panel on the right.
 * 3) Hover a command: its tooltip appears.
 * 4) Select a command: its status bar text is displayed below the two panels.

Keyboard


On this tab custom keyboard shortcuts can be defined. Shortcuts for macro commands should be defined on the Macros tab.

Add a custom shortcut

 * 1) Select a command category from the Category dropdown list.
 * 2) Select a command from the Commands panel.
 * 3) The Current shortcut box displays the current short cut, if available.
 * 4) Enter a new shortcut in the Press new shortcut input box. Shortcuts can be up to 4 inputs long. Each input is either a single character, a combination of one or more special keys or a combination of one or more special keys and a character. Use  to correct mistakes.
 * 5) If the shortcut is already in use a dialog box will ask to confirm you want to override it, and the command the shortcut is assigned to will appear in the Currently assigned to panel.
 * 6) Press the  button to assign the new shortcut.
 * 7) Press the  button to remove the entered shortcut. This will also remove the content of the Current shortcut box. Note that default shortcuts are not permanently removed. They will be restored upon restarting FreeCAD.

Remove a custom shortcut

 * 1) Select a command category from the Category dropdown list.
 * 2) Select a command from the Commands panel.
 * 3) Press the  button.

Remove all custom shortcuts

 * 1) Press the  button.

Workbenches


On this tab the Workbench selector list can be changed. The Enabled workbenches list shows the workbenches as they will appear in the Workbench selector.

Disable a workbench

 * 1) Select the workbench in the Enabled workbenches list.
 * 2) Press the  button.
 * 3) The workbench will be moved to the Disabled workbenches list

Re-enable a workbench

 * 1) Select the workbench in the Disabled workbenches list.
 * 2) Press the  button.
 * 3) The workbench will be moved to the Enabled workbenches list

Re-enable all workbenches

 * 1) Press the  button.

Change workbench position

 * 1) Select the workbench in the Enabled workbenches list.
 * 2) Press the  button or the  button.
 * 3) Optionally repeat this until the workbench is in the correct position.

Sort workbenches alphabetically

 * 1) Press the  button.

Toolbars


On this tab custom toolbars can be created and modified.

As already mentioned: it is recommended to activate the correct workbench before starting the Std DlgCustomize command.

In the dropdown list on the right by default the current workbench is selected. To avoid certain problems only change it if you want to work on a toolbar that should be available in all workbenches, in which case the 'Global' option should be selected.

Create a toolbar

 * 1) Press the  button.
 * 2) Enter a name in the dialog box that opens.
 * 3) Press the  button.
 * 4) The new toolbar will appear in the panel on the right.
 * 5) You cannot add two custom toolbars with the same name to a workbench, but be aware that FreeCAD does not check for name conflicts between the 'Global' toolbars and the custom toolbars belonging to workbenches.

Rename a toolbar

 * 1) Select the toolbar in the panel on the right.
 * 2) Press the  button.
 * 3) Enter a new name in the dialog box that opens.
 * 4) Press the  button.

Delete a toolbar

 * 1) Select the toolbar in the panel on the right.
 * 2) Press the  button.

Disable a toolbar

 * 1) Uncheck the checkbox in front of the toolbar name in the panel on the right.
 * 2) A disabled toolbar will be invisible in the FreeCAD interface.

Add a command

 * 1) Select the correct toolbar in the panel on the right. If no toolbar is selected, the command will be added to the first toolbar in the list.
 * 2) Select a category from the dropdown list on the left. Macro commands that have been set up on the Macros tab appear in the 'Macros' category.
 * 3) Select a command from the panel on the left.
 * 4) Or select '' to add a separator (a line between two toolbar buttons).
 * 5) Press  button.

Remove a command

 * 1) If required, expand the toolbar in the panel on the right.
 * 2) Select the command.
 * 3) Press  button.

Change command position

 * 1) If required, expand the toolbar in the panel on the right.
 * 2) Select the command.
 * 3) Press the  button or the  button.
 * 4) Optionally repeat this until the command is in the correct position.

Macros


On this tab user macro commands can be set up. Once set up, they can be added to custom toolbars. FreeCAD uses a dedicated folder for user macros and only macros in that folder can be set up. Use the Std_DlgMacroExecute command to find this folder on your system.

If you download a macro with the Std AddonMgr command then make sure that you also download its icon image file. Most macros have an image link on the information page that appears in the Addon Manager. You can for example put this image file in the users macros folder.

Add a macro command

 * 1) In the Macro dropdown list select a macro.
 * 2) Enter a Menu text. This will be the name used to identify the macro command and will also appear in the toolbar if there is no icon.
 * 3) Optionally enter a Tool tip. This text will appear near the location of the mouse when you hover the toolbar icon.
 * 4) Optionally enter a Status text. This text will appear in the status bar when you hover the toolbar icon.
 * 5) Optionally enter the wiki page for the macro, if available, in the What's this input box. Just enter the page name, not the full URL.
 * 6) Optionally enter a shortcut in the Accelerator input box. See Keyboard for more information.
 * 7) To add an icon:
 * 8) Press the Pixmap  button.
 * 9) The Choose Icon dialog box opens.
 * 10) If required Press the  button to add an icon folder.
 * 11) Select an icon from the panel. The Choose Icon dialog box closes automatically.
 * 12) Press the  button.
 * 13) The macro command appears in the panel on the left.
 * 14) The macro command can now selected on the Toolbars tab.

Remove a macro command

 * 1) Select the macro command in the panel on the left.
 * 2) Press the  button.

Change a macro command

 * 1) Double-click the macro command in the panel on the left.
 * 2) Make the required changes. Note that you cannot remove the icon, you can only replace it.
 * 3) Press the  button.

Spaceball Motion
See: 3Dconnexion input devices.

Spaceball Buttons
See: 3Dconnexion input devices.

Addons
There are other ways to customize the FreeCAD interface using its robust modular Addon repository through the Addon Manager. There are several Addons that allow for improved UI/UX. Below are some options created by users in the FreeCAD community.

Glass
https://www.youtube.com/watch?v=ny31diN1ZhM


 * Github repository: (link)
 * Forum discussion: (thread)

PieMenu

 * Github repository:

Launcher

 * Github repository: https://github.com/triplus/Launcher

ShortCut

 * Github repository: https://github.com/triplus/ShortCuts

RemBench

 * Github repository: https://github.com/triplus/RemBench

IconThemes

 * Github repository: https://github.com/triplus/IconThemes

CubeMenu

 * Github repository: https://github.com/triplus/CubeMenu