| 626 | } |
| 627 | |
| 628 | void Controller::switchWidgetNavigation(const QString &navName) |
| 629 | { |
| 630 | d->navigationBar->setNavActionChecked(navName, true); |
| 631 | if (d->currentNavigation == navName) { |
| 632 | auto action = d->navigationActions[navName]; |
| 633 | if (d->widgetBindToNavigation.values().contains(action)) { |
| 634 | auto dockName = d->widgetBindToNavigation.key(action); |
| 635 | auto &info = d->allWidgets[dockName]; |
| 636 | if (info.hiddenByManual) |
| 637 | d->mainWindow->showWidget(dockName); |
| 638 | info.hiddenByManual = false; |
| 639 | } |
| 640 | return; |
| 641 | } |
| 642 | d->currentNavigation = navName; |
| 643 | |
| 644 | d->mainWindow->hideAllWidget(); |
| 645 | d->mainWindow->hideTopTollBar(); |
| 646 | hideStatusBar(); |
| 647 | |
| 648 | d->currentDocks.clear(); |
| 649 | for (auto btn : d->dockButtons.values()) |
| 650 | btn->hide(); |
| 651 | |
| 652 | if (d->modePluginMap.values().contains(navName)) |
| 653 | raiseMode(d->modePluginMap.key(navName)); |
| 654 | d->navigationActions[navName]->trigger(); |
| 655 | |
| 656 | // send event |
| 657 | uiController.switchToWidget(navName); |
| 658 | } |
| 659 | |
| 660 | void Controller::bindWidgetToNavigation(const QString &dockName, AbstractAction *abstractAction) |
| 661 | { |
no test coverage detected