An Ribbon UI for FreeCAD, based on the PyQtRibbon library (https://github.com/haiiliin/pyqtribbon). This ribbon is based the work of Geolta (https://github.com/geolta/FreeCAD-Ribbon) and HakanSeven (https://github.com/HakanSeven12/Modern-UI) for the Modern-UI workbench.
The FreeCAD ribbon provides the following functions and features:
- Replace the default toolbars with a ribbon based on the original toolbars
- The ribbon design is stored in a Json file for easy modification of the ribbon design.
- A Ribbon Design dialog is provided for easy customization. (The changes are stored in the Json file). With this dialog you can:
- Include/exclude toolbars to be used as a panel in the ribbon
- Include/exclude workbenches
- Create your own panels based on one or more toolbars
- Change the order of the panels
- Change the order of the buttons
- Customize button text
- Set the button size to small, medium or large
- You can apply your own stylesheet
- Scripts are provided to help setup your own customized Ribbon
- And much more...
See the wiki page for more details and on how to customize the Ribbon to your preference. In the Road map you can see the development plan for the Ribbon. Please note that the road map is a live document that can change over time.
- Open FreeCAD Addon Manager.
- Search for 'FreeCAD-Ribbon'.
- Click on 'Install'.
Result: Addon will be installed and FreeCAD will prompt for a restart. Accept prompt and FreeCAD will restart with the Ribbon addon included.
Note: See wiki page/installation for other ways to install.
-
Remove the folder of this in the
Mod
folder of your FreeCAD installation -
Restart FreeCAD.
-
When you restarted you don't see any toolbar.
-
Create a new macro (Macro menu -> macros...-> create macro)
-
Paste this code in to the new macro.
from PySide import QtCore, QtGui, QtWidgets mw = FreeCADGui.getMainWindow() mw.menuBar().show() WBList = FreeCADGui.listWorkbenches() for WB in WBList: FreeCADGui.activateWorkbench(WB) for tb in mw.findChildren(QtWidgets.QToolBar): tb.show()
-
Execute the macro
-
Restart FreeCAD.
Feel free to discuss this addon on the FreeCAD Forum.
- To retrieve all toolbars and command per workbench, all workbenches must be activated. Unfortunally, this results in a longer loading time for the Ribbon Design menu. (up to a few minutes)
- When the Assembly4 Workbench is installed, make sure that the internal assembly workbench is placed before the Assembly4 workbench. If not, the ribbon for the internal assembly will show the wrong panel named "Assembly".
GPL v3.0 (see LICENSE)