Skip to content

APEbbers/FreeCAD-Ribbon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FreeCAD Ribbon UI

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.

Screenshot_light Closeup_Light

Screenshot_Dark Closeup_Dark

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.

Installation

Install via the Addon Manager

  1. Open FreeCAD Addon Manager.
  2. Search for 'FreeCAD-Ribbon'.
  3. 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.

Uninstallation

  1. Remove the folder of this in the Mod folder of your FreeCAD installation

  2. Restart FreeCAD.

  3. When you restarted you don't see any toolbar.

  4. Create a new macro (Macro menu -> macros...-> create macro)

  5. 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()
  6. Execute the macro

  7. Restart FreeCAD.

Discussion

Feel free to discuss this addon on the FreeCAD Forum.

Known Issues

  • 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".

License

GPL v3.0 (see LICENSE)