Introduced a new class managing all actions and their containers (menus and toolbars)

Description

Currently, the toolbars for the top level objects like worksheet, spreadsheet, etc. are cleared in MainWin::updateGUI() every time a new object is selected in the project explorer and re-filled with the actions from the selected object (WorksheetView::fillToolBar(), etc.). While this allows us to reuse the actions available in the objects, this breaks completely the customization of the toolbars via the "Configure Toolbars" dialog. The actions in the objects are not part of the actions collection of the KXmlGuiWindow object (not registered in the rc file).

To solve this problem, we introduce a new central class managing the relevant actions and their containers (menus and toolbars) centrally and instead of clearing and re-filling the toolbars we only re-connect to the slots of the newly selected object.

Before:

image

After:

image

Conformity

Edited by Alexander Semke

Merge request reports

Loading