* @brief Wires inter-module signals and runs each module's setupExternalConnections. */
| 602 | * @brief Wires inter-module signals and runs each module's setupExternalConnections. |
| 603 | */ |
| 604 | void Misc::ModuleManager::setupCrossModuleConnections() |
| 605 | { |
| 606 | auto* appState = &AppState::instance(); |
| 607 | auto* ioManager = &IO::ConnectionManager::instance(); |
| 608 | auto* pluginsBridge = &API::Server::instance(); |
| 609 | auto* uiDashboard = &UI::Dashboard::instance(); |
| 610 | auto* notificationCenter = &DataModel::NotificationCenter::instance(); |
| 611 | auto* miscExtensionManager = &Misc::ExtensionManager::instance(); |
| 612 | auto* miscThemeManager = &Misc::ThemeManager::instance(); |
| 613 | |
| 614 | appState->setupExternalConnections(); |
| 615 | CSV::Export::instance().setupExternalConnections(); |
| 616 | ioManager->setupExternalConnections(); |
| 617 | MDF4::Export::instance().setupExternalConnections(); |
| 618 | DataModel::FrameParser::instance().setupExternalConnections(); |
| 619 | DataModel::ProjectModel::instance().setupExternalConnections(); |
| 620 | Misc::BackupManager::instance().setupExternalConnections(); |
| 621 | API::ProcessLauncher::instance().setupExternalConnections(); |
| 622 | DataModel::FrameBuilder::instance().setupExternalConnections(); |
| 623 | DataModel::ControlScript::instance().setupExternalConnections(); |
| 624 | Console::Export::instance().setupExternalConnections(); |
| 625 | Console::Handler::instance().setupExternalConnections(); |
| 626 | IO::FileTransmission::instance().setupExternalConnections(); |
| 627 | UI::AlarmMonitor::instance().setupExternalConnections(); |
| 628 | #ifdef BUILD_COMMERCIAL |
| 629 | Sessions::Export::instance().setupExternalConnections(); |
| 630 | Sessions::DatabaseManager::instance().setupExternalConnections(); |
| 631 | MQTT::Publisher::instance().setupExternalConnections(); |
| 632 | #endif |
| 633 | |
| 634 | connect(miscExtensionManager, |
| 635 | &Misc::ExtensionManager::extensionInstalled, |
| 636 | miscThemeManager, |
| 637 | &Misc::ThemeManager::onExtensionInstalled); |
| 638 | connect(miscExtensionManager, |
| 639 | &Misc::ExtensionManager::extensionUninstalled, |
| 640 | miscThemeManager, |
| 641 | &Misc::ThemeManager::onExtensionUninstalled); |
| 642 | |
| 643 | connect(ioManager, |
| 644 | &IO::ConnectionManager::connectedChanged, |
| 645 | pluginsBridge, |
| 646 | [pluginsBridge, ioManager]() { |
| 647 | pluginsBridge->broadcastLifecycleEvent(ioManager->isConnected() |
| 648 | ? QStringLiteral("connected") |
| 649 | : QStringLiteral("disconnected")); |
| 650 | }); |
| 651 | |
| 652 | appState->restoreLastProject(); |
| 653 | |
| 654 | miscExtensionManager->refreshRepositories(); |
| 655 | connect(uiDashboard, |
| 656 | &UI::Dashboard::widgetCountChanged, |
| 657 | miscExtensionManager, |
| 658 | &Misc::ExtensionManager::onDashboardAvailableChanged); |
| 659 | |
| 660 | connect(uiDashboard, |
| 661 | &UI::Dashboard::dataReset, |
nothing calls this directly
no test coverage detected