From 885c638fea08a09ad1338ec15e10ab5cf798f464 Mon Sep 17 00:00:00 2001 From: Rainer Kartmann <rainer.kartmann@kit.edu> Date: Wed, 11 Oct 2023 19:21:16 +0200 Subject: [PATCH] Auto format --- .../ArmarXGui/ArmarXMainWindow.cpp | 594 +++++++++++------- .../applications/ArmarXGui/ArmarXMainWindow.h | 55 +- 2 files changed, 382 insertions(+), 267 deletions(-) diff --git a/source/ArmarXGui/applications/ArmarXGui/ArmarXMainWindow.cpp b/source/ArmarXGui/applications/ArmarXGui/ArmarXMainWindow.cpp index 4e20a9ef..67c9b87a 100644 --- a/source/ArmarXGui/applications/ArmarXGui/ArmarXMainWindow.cpp +++ b/source/ArmarXGui/applications/ArmarXGui/ArmarXMainWindow.cpp @@ -22,81 +22,80 @@ * GNU General Public License */ #include "ArmarXMainWindow.h" + #include <ArmarXGui/applications/ArmarXGui/ui_ArmarXMainWindow.h> -#include "Widgets/ViewerWidget.h" #include "Widgets/TitlebarWidget.h" +#include "Widgets/ViewerWidget.h" #include "Widgets/WidgetNameDialog.h" // ArmarX +#include <ArmarXCore/core/ArmarXObjectScheduler.h> #include <ArmarXCore/core/Component.h> #include <ArmarXCore/core/logging/LogSender.h> -#include <ArmarXGui/libraries/ArmarXGuiBase/ArmarXComponentWidgetController.h> #include <ArmarXCore/core/system/ArmarXDataPath.h> -#include <ArmarXCore/core/ArmarXObjectScheduler.h> #include <ArmarXCore/core/system/cmake/CMakePackageFinder.h> +#include <ArmarXGui/libraries/ArmarXGuiBase/ArmarXComponentWidgetController.h> + // Qt -#include <QtCore/QDirIterator> +#include <filesystem> +#include <optional> +#include <sstream> + +#include <sys/types.h> +#include <sys/wait.h> +#include <unistd.h> + +#include <QActionGroup> +#include <QComboBox> +#include <QCompleter> +#include <QDesktopServices> +#include <QDialog> +#include <QDialogButtonBox> +#include <QFile> #include <QFileDialog> -#include <QLabel> -#include <QListView> +#include <QGridLayout> +#include <QHBoxLayout> +#include <QHostInfo> #include <QInputDialog> -#include <QPushButton> -#include <QFile> #include <QLabel> -#include <QToolButton> -#include <QTimer> #include <QList> -#include <QStringList> -#include <QPluginLoader> -#include <QDialog> -#include <QComboBox> -#include <QGridLayout> -#include <QStackedWidget> -#include <QSplitter> -#include <QPlainTextEdit> +#include <QListView> +#include <QListWidget> #include <QMdiArea> -#include <QMutex> -#include <QSignalMapper> -#include <QSpinBox> #include <QMenu> -#include <QActionGroup> +#include <QMessageBox> #include <QModelIndex> -#include <QListWidget> -#include <QHBoxLayout> -#include <QDialogButtonBox> -#include <QProxyStyle> +#include <QMutex> #include <QPainter> -#include <QDesktopServices> -#include <QHostInfo> - -#include <Inventor/nodes/SoPerspectiveCamera.h> - -#include <ArmarXGui/libraries/ArmarXGuiBase/widgets/InfixCompleter.h> -#include <ArmarXGui/libraries/ArmarXGuiBase/widgets/InfixFilterModel.h> -#include <ArmarXGui/libraries/ArmarXGuiBase/widgets/TipDialog.h> -#include <ArmarXGui/applications/ArmarXGui/Widgets/GuiUseCaseSelector.h> - -#include <filesystem> - -#include <QCompleter> -#include <QMessageBox> +#include <QPlainTextEdit> +#include <QPluginLoader> +#include <QProxyStyle> +#include <QPushButton> #include <QScrollArea> +#include <QSignalMapper> +#include <QSpinBox> +#include <QSplitter> +#include <QStackedWidget> +#include <QStringList> #include <QStringListModel> +#include <QTimer> +#include <QToolButton> #include <QUrl> #include <QWidgetAction> +#include <QtCore/QDirIterator> +#include <QtSvg/QSvgRenderer> #include <SimoxUtility/algorithm/string/string_tools.h> -#include <Inventor/Qt/viewers/SoQtExaminerViewer.h> -#include <QtSvg/QSvgRenderer> +#include <ArmarXGui/applications/ArmarXGui/Widgets/GuiUseCaseSelector.h> +#include <ArmarXGui/libraries/ArmarXGuiBase/widgets/InfixCompleter.h> +#include <ArmarXGui/libraries/ArmarXGuiBase/widgets/InfixFilterModel.h> +#include <ArmarXGui/libraries/ArmarXGuiBase/widgets/TipDialog.h> -#include <unistd.h> -#include <optional> -#include <sys/wait.h> -#include <sys/types.h> -#include <sstream> +#include <Inventor/Qt/viewers/SoQtExaminerViewer.h> +#include <Inventor/nodes/SoPerspectiveCamera.h> //#include <omp.h> // To start ArViz Godot @@ -111,12 +110,16 @@ namespace armarx { - ArmarXMainWindow::ArmarXMainWindow(const armarx::ManagedIceObjectRegistryInterfacePtr& registry, const std::vector<std::string>& packages, const QString& configToLoad, bool disablePreloading) : + ArmarXMainWindow::ArmarXMainWindow(const armarx::ManagedIceObjectRegistryInterfacePtr& registry, + const std::vector<std::string>& packages, + const QString& configToLoad, + bool disablePreloading) : QMainWindow(NULL), pluginCache(ArmarXManagerPtr::dynamicCast(registry)), defaultPackageNames(packages), widgetsLocked(false), - settingsFile(armarx::ArmarXDataPath::GetDefaultUserConfigPath() + "/" + ARMARX_GUI_APPLICATION_NAME + ".conf"), + settingsFile(armarx::ArmarXDataPath::GetDefaultUserConfigPath() + "/" + + ARMARX_GUI_APPLICATION_NAME + ".conf"), mainSettings(QString(settingsFile.c_str()), QSettings::NativeFormat) { setStyleSheet(R"( @@ -129,16 +132,23 @@ namespace armarx } )"); - mainWidgets = QStringList() << "Meta.LogViewer" << "Statecharts.StatechartEditor" << "Meta.SystemStateMonitor" << "Meta.ScenarioManager" << "MemoryX.WorkingMemoryGui"; + mainWidgets = QStringList() << "Meta.LogViewer" + << "Statecharts.StatechartEditor" + << "Meta.SystemStateMonitor" + << "Meta.ScenarioManager" + << "MemoryX.WorkingMemoryGui"; - splashscreenPrefix = "v" + QString::fromStdString(Application::GetVersion()) + " - "; + splashscreenPrefix = "v" + QString::fromStdString(Application::GetVersion()) + " - "; QPixmap pm(QString("://icons/ArmarX-Splashscreen.png")); splashSceen = new QSplashScreen(pm); // splashSceen->show(); ui = new ::Ui::ArmarXMainWindow(); mutex3d = std::make_shared<std::recursive_mutex>(); - ArmarXWidgetInfoPtr viewerWidgetInfo(new ArmarXWidgetInfo(ArmarXComponentWidgetController::createInstance<Viewer3DWidget>, Viewer3DWidget::GetWidgetIcon(), QIcon())); + ArmarXWidgetInfoPtr viewerWidgetInfo( + new ArmarXWidgetInfo(ArmarXComponentWidgetController::createInstance<Viewer3DWidget>, + Viewer3DWidget::GetWidgetIcon(), + QIcon())); pluginCache.cacheWidget(ARMARX_VIEWER_NAME, viewerWidgetInfo); setTag(ARMARX_GUI_APPLICATION_NAME); @@ -157,11 +167,16 @@ namespace armarx setCentralWidget(NULL); tipDialog = new TipDialog(this); - tipDialog->setBlackListedStrings(mainSettings.value(CONFIG_BLACKLISTED_TIPS).toStringList()); + tipDialog->setBlackListedStrings( + mainSettings.value(CONFIG_BLACKLISTED_TIPS).toStringList()); ui->actionLoadLastConfig->setChecked(mainSettings.value(CONFIG_LOAD_LAST_CONFIG).toBool()); addWidgetAction = new AddArmarXWidgetAction("", this, this); - connect(addWidgetAction, SIGNAL(clicked(QString, QString)), this, SLOT(createArmarXWidget(QString, QString)), Qt::UniqueConnection); + connect(addWidgetAction, + SIGNAL(clicked(QString, QString)), + this, + SLOT(createArmarXWidget(QString, QString)), + Qt::UniqueConnection); connect(ui->actionLoadPlugin, SIGNAL(triggered()), this, SLOT(pluginDialog())); @@ -173,7 +188,8 @@ namespace armarx connect(ui->actionLock_Widgets, SIGNAL(triggered()), this, SLOT(toggleWidgetLock())); // EmergencyStop - emergencyStopWidget = EmergencyStopWidgetPtr::dynamicCast(ArmarXComponentWidgetController::createInstance<EmergencyStopWidget>()); + emergencyStopWidget = EmergencyStopWidgetPtr::dynamicCast( + ArmarXComponentWidgetController::createInstance<EmergencyStopWidget>()); this->registry->addObject(ManagedIceObjectPtr::dynamicCast(emergencyStopWidget)); // plugins @@ -200,15 +216,16 @@ namespace armarx QStringList recentlyFiles = mainSettings.value("RecentlyFiles").toStringList(); splashSceen->finish(this); - guiUseCaseSelector = new GuiUseCaseSelector(this, mainSettings.value("DoNotShowUseCaseDialog").toBool(), this); - + guiUseCaseSelector = new GuiUseCaseSelector( + this, mainSettings.value("DoNotShowUseCaseDialog").toBool(), this); if (!configToLoad.isEmpty()) { loadGuiConfig(configToLoad); } - else if (!mainSettings.value("DoNotShowUseCaseDialog").toBool() && guiUseCaseSelector->exec() == QDialog::Accepted) + else if (!mainSettings.value("DoNotShowUseCaseDialog").toBool() && + guiUseCaseSelector->exec() == QDialog::Accepted) { QString path = guiUseCaseSelector->getSelectedConfigFilePath(); ARMARX_INFO << VAROUT(path); @@ -228,7 +245,7 @@ namespace armarx } else { - QStringList defaultWidgets {"Meta.LogViewer"}; + QStringList defaultWidgets{"Meta.LogViewer"}; for (auto& widgetName : defaultWidgets) { if (existsWidget(widgetName)) @@ -250,9 +267,8 @@ namespace armarx delete splashSceen; } - - - void ArmarXMainWindow::removeViewerWidget(QObject* widget) + void + ArmarXMainWindow::removeViewerWidget(QObject* widget) { ARMARX_WARNING << "Removing 3d viewer" << std::endl; @@ -264,15 +280,17 @@ namespace armarx removeArmarXWidget(widget); } - - Viewer3DWidgetPtr ArmarXMainWindow::setupViewerWidget() + Viewer3DWidgetPtr + ArmarXMainWindow::setupViewerWidget() { if (listOpenWidgets.find(ARMARX_VIEWER_NAME) != listOpenWidgets.end()) { - return Viewer3DWidgetPtr::dynamicCast(listOpenWidgets.find(ARMARX_VIEWER_NAME).value().second); + return Viewer3DWidgetPtr::dynamicCast( + listOpenWidgets.find(ARMARX_VIEWER_NAME).value().second); } - Viewer3DWidgetPtr viewer = Viewer3DWidgetPtr::dynamicCast(createArmarXWidget(ARMARX_VIEWER_NAME, ARMARX_VIEWER_NAME)); + Viewer3DWidgetPtr viewer = Viewer3DWidgetPtr::dynamicCast( + createArmarXWidget(ARMARX_VIEWER_NAME, ARMARX_VIEWER_NAME)); // ensure that all drawings are protected with a mutex viewer->setMutex3D(mutex3d); @@ -280,9 +298,8 @@ namespace armarx return viewer; } - - - void ArmarXMainWindow::pluginDialog() + void + ArmarXMainWindow::pluginDialog() { QFileDialog dialog(this); dialog.setFileMode(QFileDialog::ExistingFiles); @@ -302,7 +319,8 @@ namespace armarx } } - void ArmarXMainWindow::loadPlugins(const QStringList& fileNames) + void + ArmarXMainWindow::loadPlugins(const QStringList& fileNames) { QStringList guiFiles; @@ -311,7 +329,8 @@ namespace armarx QString fileName = fileNames.at(i); // only try to load files ending with GuiPlugin.so and GuiPlugin.dll - if (!fileName.endsWith("GuiPlugin.so") && !fileName.endsWith("GuiPlugin.dll") && !fileName.endsWith("GuiPlugin.dylib")) + if (!fileName.endsWith("GuiPlugin.so") && !fileName.endsWith("GuiPlugin.dll") && + !fileName.endsWith("GuiPlugin.dylib")) { continue; } @@ -328,14 +347,14 @@ namespace armarx splashSceen->showMessage(splashscreenPrefix + fileName, Qt::AlignJustify | Qt::AlignBottom); qApp->processEvents(); - } pluginCache.cachePlugin(fileName); } updateAvailableWidgetList(); } - QAction* ArmarXMainWindow::addActionToToolBar(QAction* action, bool allowText) + QAction* + ArmarXMainWindow::addActionToToolBar(QAction* action, bool allowText) { QToolButton* button = new QToolButton(ui->toolBar); @@ -353,19 +372,20 @@ namespace armarx button->setDefaultAction(action); if (not action->icon().isNull()) { - const QSize maxSize {256, 24}; + const QSize maxSize{256, 24}; const QSize iconSize = action->icon().actualSize(maxSize); // Setting the action has already set the icon, so this line is unnecessary. // button->setIcon(action->icon()); button->setIconSize(iconSize); - button->setFixedSize(textSize.has_value() - ? QSize{textSize->width() + iconSize.width(), iconSize.height()} - : iconSize); + button->setFixedSize(textSize.has_value() ? QSize{textSize->width() + iconSize.width(), + iconSize.height()} + : iconSize); } return ui->toolBar->addWidget(button); } - QString ArmarXMainWindow::getLibraryPathFromPackage(const QString& packageName) + QString + ArmarXMainWindow::getLibraryPathFromPackage(const QString& packageName) { CMakePackageFinder packageFinder(packageName.toStdString()); std::string libPaths = packageFinder.getLibraryPaths(); @@ -375,7 +395,8 @@ namespace armarx return dir; } - QStringList ArmarXMainWindow::getFavoriteWidgets() + QStringList + ArmarXMainWindow::getFavoriteWidgets() { auto widgetUsageHistory = mainSettings.value("WidgetUsageHistory").toList(); std::map<QString, int> widgetUsage; @@ -396,9 +417,9 @@ namespace armarx ranking.insert(std::make_pair(it->second, it->first)); } int i = 0; - const int favCount = mainSettings.value("FavoriteWidgetCount", 6).toInt(); + const int favCount = mainSettings.value("FavoriteWidgetCount", 6).toInt(); QStringList favoriteWidgetNames; - for (auto it = ranking.rbegin(); it != ranking.rend() && i < favCount ; it++) + for (auto it = ranking.rbegin(); it != ranking.rend() && i < favCount; it++) { auto& widgetName = it->second; if (!mainWidgets.contains(widgetName)) @@ -410,7 +431,8 @@ namespace armarx return favoriteWidgetNames; } - void ArmarXMainWindow::loadPluginsFromPackage(const QString& packageName) + void + ArmarXMainWindow::loadPluginsFromPackage(const QString& packageName) { QSet<QString> pluginDirs; splashSceen->showMessage(splashscreenPrefix + packageName, @@ -424,20 +446,22 @@ namespace armarx loadPlugins(pluginDirs, false); } - - void ArmarXMainWindow::loadPlugins(const QString& pluginDir, bool searchRecursive) + void + ArmarXMainWindow::loadPlugins(const QString& pluginDir, bool searchRecursive) { QSet<QString> dirs; dirs.insert(pluginDir); loadPlugins(dirs, searchRecursive); } - - void ArmarXMainWindow::loadPlugins(const QSet<QString>& pluginDirs, bool searchRecursive) + void + ArmarXMainWindow::loadPlugins(const QSet<QString>& pluginDirs, bool searchRecursive) { // only search paths ending with lib QStringList filters; - filters << "*.so" << "*.dll" << "*.dylib"; + filters << "*.so" + << "*.dll" + << "*.dylib"; QList<QDir> directoriesToCheck; QStringList allFileNames; @@ -447,8 +471,10 @@ namespace armarx while (directoriesToCheck.size() > 0) { - ARMARX_VERBOSE_S << "Checking dir : " + directoriesToCheck.front().absolutePath() << std::endl; - splashSceen->showMessage(splashscreenPrefix + directoriesToCheck.front().absolutePath(), + ARMARX_VERBOSE_S << "Checking dir : " + directoriesToCheck.front().absolutePath() + << std::endl; + splashSceen->showMessage(splashscreenPrefix + + directoriesToCheck.front().absolutePath(), Qt::AlignJustify | Qt::AlignBottom); qApp->processEvents(); QDir currentPluginDir = directoriesToCheck.front(); @@ -471,36 +497,38 @@ namespace armarx if (searchRecursive) { - QDirIterator directoryIterator(currentPluginDir.absolutePath(), QStringList(), QDir::Dirs | QDir::NoDotAndDotDot, QDirIterator::Subdirectories); + QDirIterator directoryIterator(currentPluginDir.absolutePath(), + QStringList(), + QDir::Dirs | QDir::NoDotAndDotDot, + QDirIterator::Subdirectories); while (directoryIterator.hasNext()) { directoryIterator.next(); directoriesToCheck.push_back(QDir(directoryIterator.filePath())); - } } - } } loadPlugins(allFileNames); } - - - bool ArmarXMainWindow::existsWidget(const QString& widgetName) + bool + ArmarXMainWindow::existsWidget(const QString& widgetName) { auto list = pluginCache.getAvailableWidgetNames(); return list.contains(widgetName); } - void ArmarXMainWindow::loadPlugin(QString filePath) + void + ArmarXMainWindow::loadPlugin(QString filePath) { QFileInfo pathInfo(filePath); QString fileName(pathInfo.fileName()); pluginCache.cachePlugin(filePath); - ARMARX_INFO << "Plugin Path: " << pathInfo.absoluteFilePath().toStdString() << armarx::flush; + ARMARX_INFO << "Plugin Path: " << pathInfo.absoluteFilePath().toStdString() + << armarx::flush; updateAvailableWidgetList(); // if (!loadedPluginFilepaths.contains(pathInfo.absoluteFilePath())) // { @@ -514,28 +542,24 @@ namespace armarx // } } - - - - void ArmarXMainWindow::closeEvent(QCloseEvent* event) + void + ArmarXMainWindow::closeEvent(QCloseEvent* event) { emit closeRequest(); event->accept(); - } - - - void ArmarXMainWindow::closeAllWidgets() + void + ArmarXMainWindow::closeAllWidgets() { OpenWidgetMap listOpenWidgetsTemp = listOpenWidgets; OpenWidgetMap::iterator it = listOpenWidgetsTemp.begin(); - for (; it != listOpenWidgetsTemp.end() ; ++it) + for (; it != listOpenWidgetsTemp.end(); ++it) { - ARMARX_INFO << "Closing widget " << it.key() << " size: " << listOpenWidgetsTemp.size(); + ARMARX_INFO << "Closing widget " << it.key() << " size: " << listOpenWidgetsTemp.size(); QDockWidget* w = it.value().first; if (w) @@ -560,9 +584,12 @@ namespace armarx appendFileToWindowTitle(configFilepath); } - void ArmarXMainWindow::closeAllWidgetsWithDialog() + void + ArmarXMainWindow::closeAllWidgetsWithDialog() { - QMessageBox dialog(QMessageBox::Question, tr("Closing all widgets"), tr("Do you really want to close all widgets?")); + QMessageBox dialog(QMessageBox::Question, + tr("Closing all widgets"), + tr("Do you really want to close all widgets?")); dialog.setStandardButtons(QMessageBox::No | QMessageBox::Yes); dialog.setDefaultButton(QMessageBox::Yes); @@ -572,9 +599,8 @@ namespace armarx } } - - - void ArmarXMainWindow::addToRecentlyOpenedFileList(QString configFilepath) + void + ArmarXMainWindow::addToRecentlyOpenedFileList(QString configFilepath) { QDir path(configFilepath); @@ -592,18 +618,19 @@ namespace armarx mainSettings.setValue("RecentlyFiles", recentlyFiles); } - - std::vector<std::string> ArmarXMainWindow::getDefaultPackageNames() + std::vector<std::string> + ArmarXMainWindow::getDefaultPackageNames() { return defaultPackageNames; } - - Viewer3DWidgetPtr ArmarXMainWindow::getViewerWidget() + Viewer3DWidgetPtr + ArmarXMainWindow::getViewerWidget() { if (listOpenWidgets.find(ARMARX_VIEWER_NAME) != listOpenWidgets.end()) { - return Viewer3DWidgetPtr::dynamicCast(listOpenWidgets.find(ARMARX_VIEWER_NAME).value().second); + return Viewer3DWidgetPtr::dynamicCast( + listOpenWidgets.find(ARMARX_VIEWER_NAME).value().second); } else { @@ -611,7 +638,8 @@ namespace armarx } } - void ArmarXMainWindow::loadGuiConfig(QString configFilepath, bool showAsOpenGuiConfig) + void + ArmarXMainWindow::loadGuiConfig(QString configFilepath, bool showAsOpenGuiConfig) { if (configFilepath.length() == 0) @@ -649,7 +677,8 @@ namespace armarx if (!QFile::exists(configFilepath)) { - ArmarXWidgetController::showMessageBox("GUI configuration file '" + configFilepath + "' does not exist."); + ArmarXWidgetController::showMessageBox("GUI configuration file '" + configFilepath + + "' does not exist."); return; } @@ -666,7 +695,8 @@ namespace armarx if (settings.allKeys().size() == 0) { - ArmarXWidgetController::showMessageBox("Could not find any settings in '" + configFilepath + "'!"); + ArmarXWidgetController::showMessageBox("Could not find any settings in '" + + configFilepath + "'!"); return; } @@ -674,14 +704,14 @@ namespace armarx auto packagesStd = CMakePackageFinder::FindAllArmarXSourcePackages(); // force deterministic loading of plugins by name - std::sort(packagesStd.begin(), packagesStd.end(), - [](const std::string& lhs, const std::string& rhs) -> bool { - return simox::alg::to_lower(lhs) < simox::alg::to_lower(rhs); - }); + std::sort(packagesStd.begin(), + packagesStd.end(), + [](const std::string& lhs, const std::string& rhs) -> bool + { return simox::alg::to_lower(lhs) < simox::alg::to_lower(rhs); }); QStringList packagesToLoad; ARMARX_VERBOSE << "Discovered: "; - for(const auto& pkg : packagesStd) + for (const auto& pkg : packagesStd) { packagesToLoad.push_back(QString::fromStdString(pkg)); ARMARX_VERBOSE << "- " << pkg; @@ -702,8 +732,10 @@ namespace armarx settings.beginGroup(widgetCustomName); // if(widgetCustomName != ARMARX_VIEWER_NAME || !view3D) { - ARMARX_INFO << "Creating widget " << settings.value("WidgetBaseName").toString() << "," << widgetCustomName; - ArmarXWidgetControllerPtr widget = createArmarXWidget(settings.value("WidgetBaseName").toString(), widgetCustomName, &settings); + ARMARX_INFO << "Creating widget " << settings.value("WidgetBaseName").toString() + << "," << widgetCustomName; + ArmarXWidgetControllerPtr widget = createArmarXWidget( + settings.value("WidgetBaseName").toString(), widgetCustomName, &settings); // if(widgetCustomName == ARMARX_VIEWER_NAME && !view3D) // view3D = Viewer3DWidgetPtr::dynamicCast(widget); } @@ -735,7 +767,8 @@ namespace armarx if (it != listOpenWidgets.end()) { - it->first->resize(settings.value("widgetWidth").toInt(), settings.value("widgetHeight").toInt()); + it->first->resize(settings.value("widgetWidth").toInt(), + settings.value("widgetHeight").toInt()); } settings.endGroup(); @@ -748,11 +781,10 @@ namespace armarx updateOpenWidgetList(); QFileInfo file(configFilepath); statusBar()->showMessage("'" + file.fileName() + "' loaded.", 10000); - } - - void ArmarXMainWindow::saveGuiConfig() + void + ArmarXMainWindow::saveGuiConfig() { if (configFilepath.length() == 0) { @@ -785,7 +817,6 @@ namespace armarx { return; } - } @@ -833,16 +864,17 @@ namespace armarx updateRecentlyOpenedFileList(); QFileInfo file(configFilepath); statusBar()->showMessage("'" + file.fileName() + "' saved.", 10000); - } - void ArmarXMainWindow::saveGuiConfigAs() + void + ArmarXMainWindow::saveGuiConfigAs() { configFilepath.clear(); saveGuiConfig(); } - void ArmarXMainWindow::appendFileToWindowTitle(const QString& filepath) + void + ArmarXMainWindow::appendFileToWindowTitle(const QString& filepath) { if (filepath.length() > 0) { @@ -850,7 +882,9 @@ namespace armarx std::filesystem::path file(filepath.toStdString()); path.cdUp(); - setWindowTitle(guiWindowBaseName + " - " + QString::fromStdString(file.filename().string()) + " in " + path.absolutePath()); + setWindowTitle(guiWindowBaseName + " - " + + QString::fromStdString(file.filename().string()) + " in " + + path.absolutePath()); } else { @@ -858,9 +892,10 @@ namespace armarx } } - - - ArmarXWidgetControllerPtr ArmarXMainWindow::createArmarXWidget(QString widgetName, QString customInstanceName, QSettings* settings) + ArmarXWidgetControllerPtr + ArmarXMainWindow::createArmarXWidget(QString widgetName, + QString customInstanceName, + QSettings* settings) { if (listOpenWidgets.find("Dock" + customInstanceName) != listOpenWidgets.end()) @@ -883,7 +918,8 @@ namespace armarx if (!creator) { - ArmarXWidgetController::showMessageBox("Could not find widget with Name: " + widgetName); + ArmarXWidgetController::showMessageBox("Could not find widget with Name: " + + widgetName); return NULL; } auto widgetUsage = mainSettings.value("WidgetUsageHistory").toList(); @@ -908,7 +944,8 @@ namespace armarx else if (w->getConfigDialog(this)) { - ManagedIceObjectPtr comp = ManagedIceObjectPtr::dynamicCast(w->getConfigDialog().data()); + ManagedIceObjectPtr comp = + ManagedIceObjectPtr::dynamicCast(w->getConfigDialog().data()); if (comp) { @@ -917,10 +954,18 @@ namespace armarx } w->getConfigDialog()->setModal(true); - connect(w->getConfigDialog().data(), SIGNAL(accepted()), w.get(), SLOT(configAccepted())); - connect(w.get(), SIGNAL(configAccepted(ArmarXWidgetControllerPtr)), this, SLOT(addArmarXWidget(ArmarXWidgetControllerPtr))); - connect(w->getConfigDialog().data(), SIGNAL(rejected()), w.get(), SLOT(configRejected())); - connect(w.get(), SIGNAL(configRejected(ArmarXWidgetControllerPtr)), this, SLOT(addArmarXWidgetCanceled(ArmarXWidgetControllerPtr))); + connect( + w->getConfigDialog().data(), SIGNAL(accepted()), w.get(), SLOT(configAccepted())); + connect(w.get(), + SIGNAL(configAccepted(ArmarXWidgetControllerPtr)), + this, + SLOT(addArmarXWidget(ArmarXWidgetControllerPtr))); + connect( + w->getConfigDialog().data(), SIGNAL(rejected()), w.get(), SLOT(configRejected())); + connect(w.get(), + SIGNAL(configRejected(ArmarXWidgetControllerPtr)), + this, + SLOT(addArmarXWidgetCanceled(ArmarXWidgetControllerPtr))); pendingWidgets.push_back(w); w->getConfigDialog()->show(); @@ -935,7 +980,9 @@ namespace armarx return w; } - ArmarXWidgetControllerPtr ArmarXMainWindow::addArmarXWidget(ArmarXWidgetControllerPtr newWidgetController, bool createViewerWidget) + ArmarXWidgetControllerPtr + ArmarXMainWindow::addArmarXWidget(ArmarXWidgetControllerPtr newWidgetController, + bool createViewerWidget) { for (unsigned int i = 0; i < pendingWidgets.size(); ++i) { @@ -956,7 +1003,8 @@ namespace armarx ARMARX_VERBOSE << "Adding new widget: " << customInstanceName; assert(widgetName == newWidgetController->getWidgetName()); - ArmarXDockWidget* dockWidget = new ArmarXDockWidget(customInstanceName, newWidgetController); + ArmarXDockWidget* dockWidget = + new ArmarXDockWidget(customInstanceName, newWidgetController); //w->connectDestroySlot(); connect(dockWidget, SIGNAL(destroyed(QObject*)), this, SLOT(removeArmarXWidget(QObject*))); @@ -968,13 +1016,15 @@ namespace armarx if (listOpenWidgets.find(dockWidget->objectName()) != listOpenWidgets.end()) { - ArmarXWidgetController::showMessageBox("A Widget with the title '" + customInstanceName + "' already exists."); + ArmarXWidgetController::showMessageBox("A Widget with the title '" + + customInstanceName + "' already exists."); delete dockWidget; return ArmarXWidgetControllerPtr(); } QDockWidget* biggestOpenDockWidget = getBiggestOpenWidget(); - listOpenWidgets[customInstanceName] = qMakePair<QDockWidget*, ArmarXWidgetControllerPtr>(dockWidget, newWidgetController); + listOpenWidgets[customInstanceName] = + qMakePair<QDockWidget*, ArmarXWidgetControllerPtr>(dockWidget, newWidgetController); addDockWidget(Qt::RightDockWidgetArea, dockWidget); newWidgetController->postDocking(); @@ -993,7 +1043,8 @@ namespace armarx // set it even if no 3d scene may be currently available newWidgetController->setMutex3D(mutex3d); - QApplication::instance()->processEvents(); // process events so that the widgets are completetly intialized? + QApplication::instance() + ->processEvents(); // process events so that the widgets are completetly intialized? ManagedIceObjectPtr comp = ManagedIceObjectPtr::dynamicCast(newWidgetController); if (comp) @@ -1002,16 +1053,18 @@ namespace armarx ARMARX_INFO << "Waiting for widget initialization " << widgetName << armarx::flush; int timeoutMs = 30000; - if (!comp->getObjectScheduler()->waitForObjectState(eManagedIceObjectInitialized, timeoutMs)) + if (!comp->getObjectScheduler()->waitForObjectState(eManagedIceObjectInitialized, + timeoutMs)) { - ARMARX_WARNING << "Widget " << customInstanceName << " was not connected to Ice after " << timeoutMs / 1000 << " seconds" << std::endl; + ARMARX_WARNING << "Widget " << customInstanceName + << " was not connected to Ice after " << timeoutMs / 1000 + << " seconds" << std::endl; } } ARMARX_INFO << "Widget initialization done for " << widgetName << armarx::flush; - SoNode* node = newWidgetController->getScene(); if (node) @@ -1031,7 +1084,7 @@ namespace armarx } if (!viewerInstance && createViewerWidget) - // if(listOpenWidgets.find(ARMARX_VIEWER_NAME) == listOpenWidgets.end()) + // if(listOpenWidgets.find(ARMARX_VIEWER_NAME) == listOpenWidgets.end()) { ARMARX_INFO << "Setting up CoinQt Viewer"; viewerInstance = setupViewerWidget(); @@ -1053,7 +1106,8 @@ namespace armarx return newWidgetController; } - void ArmarXMainWindow::addArmarXWidgetCanceled(ArmarXWidgetControllerPtr newWidgetController) + void + ArmarXMainWindow::addArmarXWidgetCanceled(ArmarXWidgetControllerPtr newWidgetController) { for (unsigned int i = 0; i < pendingWidgets.size(); ++i) { @@ -1065,7 +1119,8 @@ namespace armarx } } - void ArmarXMainWindow::removeArmarXWidget(QObject* widget) + void + ArmarXMainWindow::removeArmarXWidget(QObject* widget) { ARMARX_DEBUG << "removing widgetname: " << widget->objectName(); QDockWidget* dockWidget = qobject_cast<QDockWidget*>(widget); @@ -1083,7 +1138,6 @@ namespace armarx if (it.value().second) { widgetName = it.value().second->getInstanceName(); - } else { @@ -1119,7 +1173,8 @@ namespace armarx removeDockWidget(dockWidget); } - QPointer<QDockWidget> ArmarXMainWindow::getBiggestOpenWidget() + QPointer<QDockWidget> + ArmarXMainWindow::getBiggestOpenWidget() { OpenWidgetMap::iterator it = listOpenWidgets.begin(); QPointer<QDockWidget> biggestWidget = NULL; @@ -1128,7 +1183,9 @@ namespace armarx { QDockWidget* dockWidget = it.value().first; - if (!biggestWidget || dockWidget->size().width() * dockWidget->size().height() > biggestWidget->size().width() * biggestWidget->size().height()) + if (!biggestWidget || + dockWidget->size().width() * dockWidget->size().height() > + biggestWidget->size().width() * biggestWidget->size().height()) { biggestWidget = dockWidget; } @@ -1137,7 +1194,10 @@ namespace armarx return biggestWidget; } - QMenu* ArmarXMainWindow::getCategoryMenu(const std::string& categoryString, QMenu* menu, QIcon categoryIcon) + QMenu* + ArmarXMainWindow::getCategoryMenu(const std::string& categoryString, + QMenu* menu, + QIcon categoryIcon) { Ice::StringSeq items = simox::alg::split(categoryString, "."); @@ -1173,7 +1233,8 @@ namespace armarx return menu->addMenu(QString::fromStdString(*items.begin())); } - void ArmarXMainWindow::updateAvailableWidgetList() + void + ArmarXMainWindow::updateAvailableWidgetList() { ui->menuAdd_Widget->clear(); @@ -1237,54 +1298,79 @@ namespace armarx addActionToToolBar(action, allowText); } actionList[fullWidgetName] = action; - connect(action, SIGNAL(triggered()), action, SLOT(addArmarXWidget()), Qt::UniqueConnection); - connect(action, SIGNAL(clicked(QString, QString)), this, SLOT(createArmarXWidget(QString, QString)), Qt::UniqueConnection); - + connect( + action, SIGNAL(triggered()), action, SLOT(addArmarXWidget()), Qt::UniqueConnection); + connect(action, + SIGNAL(clicked(QString, QString)), + this, + SLOT(createArmarXWidget(QString, QString)), + Qt::UniqueConnection); } addArVizGodotIcon(); - AddArmarXWidgetAction* completerAction = new AddArmarXWidgetAction("", ui->menuAdd_Widget, this); + AddArmarXWidgetAction* completerAction = + new AddArmarXWidgetAction("", ui->menuAdd_Widget, this); InfixCompleter* completer = new InfixCompleter(widgetNameList, searchField); - connect(searchField, SIGNAL(textEdited(QString)), completer, SLOT(setCompletionInfix(QString))); + connect( + searchField, SIGNAL(textEdited(QString)), completer, SLOT(setCompletionInfix(QString))); // connect(completer, SIGNAL(activated(QString)), completerAction, SLOT(triggered(QString))); connect(completerAction, SIGNAL(accepted()), searchField, SLOT(clear())); - connect(completerAction, SIGNAL(clicked(QString, QString)), this, SLOT(createArmarXWidget(QString, QString)), Qt::UniqueConnection); + connect(completerAction, + SIGNAL(clicked(QString, QString)), + this, + SLOT(createArmarXWidget(QString, QString)), + Qt::UniqueConnection); searchField->setCompleter(completer); ui->toolBar->addSeparator(); ui->toolBar->addWidget(searchField); QIcon icon; - icon.addFile(QString::fromUtf8("://icons/edit-add.ico"), QSize(), QIcon::Normal, QIcon::Off); + icon.addFile( + QString::fromUtf8("://icons/edit-add.ico"), QSize(), QIcon::Normal, QIcon::Off); openWidgetButton = new QToolButton(this); openWidgetButton->setEnabled(false); openWidgetButton->setIcon(icon); openWidgetButton->setFixedSize({24, 24}); openWidgetButton->setToolTip("Open selected widget"); - connect(openWidgetButton, SIGNAL(clicked()), this, SLOT(openWidgetButtonClicked()), Qt::UniqueConnection); + connect(openWidgetButton, + SIGNAL(clicked()), + this, + SLOT(openWidgetButtonClicked()), + Qt::UniqueConnection); ui->toolBar->addWidget(openWidgetButton); - connect(searchField, SIGNAL(textChanged(QString)), this, SLOT(updateOpenWidgetButtonStatus(QString)), Qt::UniqueConnection); + connect(searchField, + SIGNAL(textChanged(QString)), + this, + SLOT(updateOpenWidgetButtonStatus(QString)), + Qt::UniqueConnection); - connect(searchField, SIGNAL(returnPressed()), this, SLOT(openWidgetButtonClicked()), Qt::UniqueConnection); + connect(searchField, + SIGNAL(returnPressed()), + this, + SLOT(openWidgetButtonClicked()), + Qt::UniqueConnection); { ui->toolBar->addSeparator(); favoritesLabel = new QLabel("Favorites:"); - favoritesLabel->setToolTip( - "The favorites are generated from the usage frequency over the last X widget creations." - " Rightclick to change the number of displayed favorites" - ); + favoritesLabel->setToolTip("The favorites are generated from the usage frequency over " + "the last X widget creations." + " Rightclick to change the number of displayed favorites"); ui->toolBar->addWidget(favoritesLabel); //add menu favoritesLabel->setContextMenuPolicy(Qt::CustomContextMenu); - connect(favoritesLabel, SIGNAL(customContextMenuRequested(const QPoint&)), - this, SLOT(onContextMenuFavoritesRequested(const QPoint&))); + connect(favoritesLabel, + SIGNAL(customContextMenuRequested(const QPoint&)), + this, + SLOT(onContextMenuFavoritesRequested(const QPoint&))); } updatefavoriteActions(); } - void ArmarXMainWindow::updateOpenWidgetList() + void + ArmarXMainWindow::updateOpenWidgetList() { ui->menuWindows->clear(); QAction* closeAllAction = new QAction("Close all widgets", ui->menuWindows); @@ -1297,18 +1383,18 @@ namespace armarx for (; it != listOpenWidgets.end(); it++) { QDockWidget* dockWidget = it.value().first; - QAction* action = new QAction(dockWidget ->objectName(), ui->menuWindows); + QAction* action = new QAction(dockWidget->objectName(), ui->menuWindows); action->setCheckable(true); - action->setChecked(!dockWidget ->isHidden()); + action->setChecked(!dockWidget->isHidden()); connect(action, SIGNAL(toggled(bool)), dockWidget, SLOT(setVisible(bool))); // connect(object, SIGNAL(visibilityChanged(bool)), action, SLOT(setChecked(bool))); ui->menuWindows->addAction(action); - } } - void ArmarXMainWindow::addArVizGodotIcon() + void + ArmarXMainWindow::addArVizGodotIcon() { const char* path = std::getenv("arviz_godot_DIR"); if (path == nullptr) @@ -1320,7 +1406,8 @@ namespace armarx std::filesystem::path mainDirectory = buildDirectory.parent_path(); std::filesystem::path binaryPath = buildDirectory / "bin" / "arviz-godot"; - std::filesystem::path iconPath = mainDirectory / "source" / "arviz_godot" / "project" / "icon.png"; + std::filesystem::path iconPath = + mainDirectory / "source" / "arviz_godot" / "project" / "icon.png"; if (not std::filesystem::exists(binaryPath) or not std::filesystem::exists(iconPath)) { @@ -1340,7 +1427,8 @@ namespace armarx if (not std::filesystem::exists(binaryPath)) { QMessageBox errorBox; - errorBox.critical(nullptr, "Error", "The ArViz Godot executable is no longer available."); + errorBox.critical( + nullptr, "Error", "The ArViz Godot executable is no longer available."); ARMARX_ERROR << "Failed to find ArViz Godot"; @@ -1371,7 +1459,8 @@ namespace armarx connect(action, &QAction::triggered, this, slot, Qt::UniqueConnection); } - void ArmarXMainWindow::updateRecentlyOpenedFileList() + void + ArmarXMainWindow::updateRecentlyOpenedFileList() { QStringList recentlyFiles = mainSettings.value("RecentlyFiles").toStringList(); QMenu* menu = ui->menuRecently_Opened_Files; @@ -1387,7 +1476,8 @@ namespace armarx foreach (QString file, recentlyFiles) { - OpenRecentlyOpenedFileAction* action = new OpenRecentlyOpenedFileAction(file, menu, this); + OpenRecentlyOpenedFileAction* action = + new OpenRecentlyOpenedFileAction(file, menu, this); action->setCheckable(false); connect(action, SIGNAL(triggered()), action, SLOT(openFile())); @@ -1395,7 +1485,8 @@ namespace armarx } } - void ArmarXMainWindow::updateStatusOfOpenWidgets() + void + ArmarXMainWindow::updateStatusOfOpenWidgets() { OpenWidgetMap::iterator it = listOpenWidgets.begin(); @@ -1403,7 +1494,8 @@ namespace armarx { QDockWidget* dockWidget = it.value().first; ManagedIceObjectPtr comp = ManagedIceObjectPtr::dynamicCast(it.value().second); - StatusDockWidgetTitleBar* titlebar = qobject_cast<StatusDockWidgetTitleBar*>(dockWidget->titleBarWidget()); + StatusDockWidgetTitleBar* titlebar = + qobject_cast<StatusDockWidgetTitleBar*>(dockWidget->titleBarWidget()); if (titlebar && comp) { @@ -1411,7 +1503,9 @@ namespace armarx ManagedIceObjectConnectivity con = comp->getConnectivity(); QStringList dependencies; - for (DependencyMap::iterator i = con.dependencies.begin(); i != con.dependencies.end(); i++) + for (DependencyMap::iterator i = con.dependencies.begin(); + i != con.dependencies.end(); + i++) { ManagedIceObjectDependencyBasePtr& dep = i->second; @@ -1426,7 +1520,8 @@ namespace armarx } } - void ArmarXMainWindow::enterFullscreenMode() + void + ArmarXMainWindow::enterFullscreenMode() { showFullScreen(); ui->toolBar->hide(); @@ -1445,7 +1540,8 @@ namespace armarx addAction(leaveFullScreenActionEsc); } - void ArmarXMainWindow::leaveFullscreenMode() + void + ArmarXMainWindow::leaveFullscreenMode() { // Remove actions for leaving fullscreen mode (menu will be available again) removeAction(leaveFullScreenActionF11); @@ -1460,7 +1556,8 @@ namespace armarx ui->statusbar->show(); } - void ArmarXMainWindow::toggleWidgetLock() + void + ArmarXMainWindow::toggleWidgetLock() { QList<ArmarXDockWidget*> dockWidgets = findChildren<ArmarXDockWidget*>(); if (widgetsLocked) @@ -1483,15 +1580,14 @@ namespace armarx widgetsLocked = !widgetsLocked; } - - ///////////////////////////////////////////////////////////////////////// //// Additional Helper Classes ///////////////////////////////////////////////////////////////////////// - AddArmarXWidgetAction::AddArmarXWidgetAction(QString widgetName, QObject* parent, ArmarXMainWindow* mainGui) - : QAction(widgetName, parent), - mainGui(mainGui) + AddArmarXWidgetAction::AddArmarXWidgetAction(QString widgetName, + QObject* parent, + ArmarXMainWindow* mainGui) : + QAction(widgetName, parent), mainGui(mainGui) { dialog = new WidgetNameDialog(widgetName, mainGui); connect(dialog, SIGNAL(accepted()), this, SLOT(dialogAccepted())); @@ -1502,7 +1598,8 @@ namespace armarx delete dialog; } - void AddArmarXWidgetAction::triggered(QString widgetName) + void + AddArmarXWidgetAction::triggered(QString widgetName) { if (widgetName.isEmpty()) { @@ -1522,9 +1619,10 @@ namespace armarx addArmarXWidget(); } - void AddArmarXWidgetAction::addArmarXWidget() + void + AddArmarXWidgetAction::addArmarXWidget() { - dialog->editWidgetName->setText("");// reset so that TextChanged is called for sure + dialog->editWidgetName->setText(""); // reset so that TextChanged is called for sure dialog->editWidgetName->setText(this->text()); if (!dialog->checkWidgetName(this->text())) @@ -1538,16 +1636,15 @@ namespace armarx } } - void AddArmarXWidgetAction::dialogAccepted() + void + AddArmarXWidgetAction::dialogAccepted() { emit clicked(this->data().toString(), dialog->editWidgetName->text()); emit accepted(); } - ArmarXDockWidget::ArmarXDockWidget(QString name, ArmarXWidgetControllerPtr controller) : - QDockWidget(name), - controller(controller) + QDockWidget(name), controller(controller) { scrollArea = new QScrollArea(); scrollArea->setWidgetResizable(true); @@ -1565,13 +1662,14 @@ namespace armarx delete scrollArea; } - void ArmarXDockWidget::setArmarXWidget(QWidget* widget) + void + ArmarXDockWidget::setArmarXWidget(QWidget* widget) { scrollArea->setWidget(widget); } - - void ArmarXDockWidget::closeEvent(QCloseEvent* event) + void + ArmarXDockWidget::closeEvent(QCloseEvent* event) { if (controller && !controller->onClose()) { @@ -1585,11 +1683,11 @@ namespace armarx emit destroyed(this); // calls removeArmarXWidget slot - deleteLater();// use this function, so that pending signals are processed correctly - + deleteLater(); // use this function, so that pending signals are processed correctly } - void ArmarXDockWidget::lockWidget() + void + ArmarXDockWidget::lockWidget() { ARMARX_INFO << "Locking widget: " << objectName(); savedTitleBar = titleBarWidget(); @@ -1600,7 +1698,8 @@ namespace armarx } } - void ArmarXDockWidget::unlockWidget() + void + ArmarXDockWidget::unlockWidget() { ARMARX_INFO << "Unlocking widget: " << objectName(); if (savedTitleBar != nullptr) @@ -1619,17 +1718,15 @@ namespace armarx } } - - - - OpenRecentlyOpenedFileAction::OpenRecentlyOpenedFileAction(QString text, QObject* parent, ArmarXMainWindow* mainGui) : - QAction(text, parent), - mainGui(mainGui) + OpenRecentlyOpenedFileAction::OpenRecentlyOpenedFileAction(QString text, + QObject* parent, + ArmarXMainWindow* mainGui) : + QAction(text, parent), mainGui(mainGui) { - } - void OpenRecentlyOpenedFileAction::openFile() + void + OpenRecentlyOpenedFileAction::openFile() { if (mainGui) { @@ -1637,9 +1734,8 @@ namespace armarx } } - - - void armarx::ArmarXMainWindow::on_actionClear_tip_blacklist_triggered() + void + armarx::ArmarXMainWindow::on_actionClear_tip_blacklist_triggered() { tipDialog->setBlackListedStrings(QStringList()); mainSettings.setValue(CONFIG_BLACKLISTED_TIPS, tipDialog->getBlackListedStrings()); @@ -1647,28 +1743,33 @@ namespace armarx ARMARX_INFO << "Blacklist cleared"; } - void armarx::ArmarXMainWindow::on_actionAbout_triggered() + void + armarx::ArmarXMainWindow::on_actionAbout_triggered() { - QMessageBox::about(this, "ArmarX Graphical User Interface", QString("ArmarX is being developed at the High Performance Humanoid Technologies (H2T) lab at the Karlsruhe Institute of Technology (KIT)\nCopyright H2T, KIT, ") - + QString(&__DATE__[ 7]) + - + "\nVersion: " + QString::fromStdString(Application::GetVersion())); + QMessageBox::about( + this, + "ArmarX Graphical User Interface", + QString("ArmarX is being developed at the High Performance Humanoid Technologies (H2T) " + "lab at the Karlsruhe Institute of Technology (KIT)\nCopyright H2T, KIT, ") + + QString(&__DATE__[7]) + + +"\nVersion: " + QString::fromStdString(Application::GetVersion())); } - void armarx::ArmarXMainWindow::on_actionLoadLastConfig_toggled(bool toggled) + void + armarx::ArmarXMainWindow::on_actionLoadLastConfig_toggled(bool toggled) { mainSettings.setValue(CONFIG_LOAD_LAST_CONFIG, toggled); mainSettings.sync(); } - - - - void armarx::ArmarXMainWindow::on_actionArmarX_Documentation_triggered() + void + armarx::ArmarXMainWindow::on_actionArmarX_Documentation_triggered() { QDesktopServices::openUrl(QUrl("http://armarx.humanoids.kit.edu/")); } - void armarx::ArmarXMainWindow::on_actionOpen_Use_Case_triggered() + void + armarx::ArmarXMainWindow::on_actionOpen_Use_Case_triggered() { guiUseCaseSelector->setCancelButtonText("Cancel"); if (guiUseCaseSelector->exec() == QDialog::Accepted) @@ -1681,25 +1782,28 @@ namespace armarx } } mainSettings.setValue("DoNotShowUseCaseDialog", guiUseCaseSelector->getDoNotShowAgain()); - } - void armarx::ArmarXMainWindow::on_actionClear_plugin_cache_triggered() + void + armarx::ArmarXMainWindow::on_actionClear_plugin_cache_triggered() { pluginCache.clearCacheFile(); } - void ArmarXMainWindow::updateOpenWidgetButtonStatus(QString widgetName) + void + ArmarXMainWindow::updateOpenWidgetButtonStatus(QString widgetName) { openWidgetButton->setEnabled(pluginCache.getAvailableWidgetNames().contains(widgetName)); } - void ArmarXMainWindow::openWidgetButtonClicked() + void + ArmarXMainWindow::openWidgetButtonClicked() { addWidgetAction->triggered(searchField->text()); } - void ArmarXMainWindow::onContextMenuFavoritesRequested(const QPoint& pos) + void + ArmarXMainWindow::onContextMenuFavoritesRequested(const QPoint& pos) { QMenu menu; @@ -1708,7 +1812,10 @@ namespace armarx numberOfFavIcons->setSingleStep(1); numberOfFavIcons->setValue(mainSettings.value("FavoriteWidgetCount", 6).toInt()); numberOfFavIcons->setToolTip("Max number of favorites"); - connect(numberOfFavIcons, SIGNAL(valueChanged(int)), this, SLOT(onNumberOfMaxFavoritesChanged(int))); + connect(numberOfFavIcons, + SIGNAL(valueChanged(int)), + this, + SLOT(onNumberOfMaxFavoritesChanged(int))); QWidgetAction* action = new QWidgetAction{&menu}; action->setDefaultWidget(numberOfFavIcons); @@ -1716,17 +1823,18 @@ namespace armarx menu.exec(favoritesLabel->mapToGlobal(pos)); } - void ArmarXMainWindow::onNumberOfMaxFavoritesChanged(int i) + void + ArmarXMainWindow::onNumberOfMaxFavoritesChanged(int i) { mainSettings.setValue("FavoriteWidgetCount", i); updatefavoriteActions(); } - void ArmarXMainWindow::updatefavoriteActions() + void + ArmarXMainWindow::updatefavoriteActions() { const auto list = getFavoriteWidgets(); - if ( - favoriteActionWidgetNames == list + if (favoriteActionWidgetNames == list //&& //favoriteActions.size() == static_cast<std::size_t>(favoriteActionWidgetNames.size()) ) @@ -1749,4 +1857,4 @@ namespace armarx } } } -} +} // namespace armarx diff --git a/source/ArmarXGui/applications/ArmarXGui/ArmarXMainWindow.h b/source/ArmarXGui/applications/ArmarXGui/ArmarXMainWindow.h index 39f30b9e..6212e244 100644 --- a/source/ArmarXGui/applications/ArmarXGui/ArmarXMainWindow.h +++ b/source/ArmarXGui/applications/ArmarXGui/ArmarXMainWindow.h @@ -27,10 +27,10 @@ #include <ArmarXGui/libraries/ArmarXGuiBase/PluginCache.h> // Qt -#include <QMainWindow> +#include <QAction> #include <QDir> #include <QDockWidget> -#include <QAction> +#include <QMainWindow> #include <QPluginLoader> // Coin3D & SoQt @@ -38,14 +38,14 @@ #include <Inventor/nodes/SoSeparator.h> // ArmarX +#include <QSplashScreen> + #include <ArmarXCore/core/application/Application.h> #include <ArmarXCore/core/logging/Logging.h> #include <ArmarXCore/core/services/tasks/RunningTask.h> -#include <QSplashScreen> - -#include "Widgets/ViewerWidget.h" #include "Widgets/EmergencyStopWidget.h" +#include "Widgets/ViewerWidget.h" class QToolButton; class QLabel; @@ -77,14 +77,15 @@ namespace armarx /** * \brief The ArmarXMainWindow class */ - class ArmarXMainWindow : - public QMainWindow, - virtual public armarx::Logging + class ArmarXMainWindow : public QMainWindow, virtual public armarx::Logging { Q_OBJECT public: - ArmarXMainWindow(const armarx::ManagedIceObjectRegistryInterfacePtr& registry, const std::vector<std::string>& packages, const QString& configToLoad, bool disablePreloading); + ArmarXMainWindow(const armarx::ManagedIceObjectRegistryInterfacePtr& registry, + const std::vector<std::string>& packages, + const QString& configToLoad, + bool disablePreloading); ~ArmarXMainWindow() override; /** @@ -153,8 +154,11 @@ namespace armarx // void listIndexes(const QModelIndexList & indexes); - ArmarXWidgetControllerPtr createArmarXWidget(QString widgetName, QString customInstanceName, QSettings* settings = NULL); - ArmarXWidgetControllerPtr addArmarXWidget(ArmarXWidgetControllerPtr newWidgetController, bool createViewerWidget = true); + ArmarXWidgetControllerPtr createArmarXWidget(QString widgetName, + QString customInstanceName, + QSettings* settings = NULL); + ArmarXWidgetControllerPtr addArmarXWidget(ArmarXWidgetControllerPtr newWidgetController, + bool createViewerWidget = true); void addArmarXWidgetCanceled(ArmarXWidgetControllerPtr newWidgetController); void removeArmarXWidget(QObject* widget); void removeViewerWidget(QObject* widget); @@ -179,6 +183,7 @@ namespace armarx void onNumberOfMaxFavoritesChanged(int i); void updatefavoriteActions(); + private: /** * @brief updates the menu entry with the available widgets. @@ -227,7 +232,7 @@ namespace armarx QSignalMapper* signalMapper; QActionGroup* layoutActions; - using OpenWidgetMap = QMap<QString, QPair<QDockWidget*, ArmarXWidgetControllerPtr> >; + using OpenWidgetMap = QMap<QString, QPair<QDockWidget*, ArmarXWidgetControllerPtr>>; OpenWidgetMap listOpenWidgets; std::vector<ArmarXWidgetControllerPtr> pendingWidgets; QListWidgetItem* viewerItem; @@ -282,8 +287,7 @@ namespace armarx /** * \brief The ArmarXDockWidget class */ - class ArmarXDockWidget : - public QDockWidget + class ArmarXDockWidget : public QDockWidget { public: ArmarXDockWidget(QString name, ArmarXWidgetControllerPtr controller); @@ -293,6 +297,7 @@ namespace armarx void lockWidget(); void unlockWidget(); + private: ArmarXWidgetControllerPtr controller; QScrollArea* scrollArea; @@ -300,12 +305,13 @@ namespace armarx QWidget* savedTitleBar; }; - class AddArmarXWidgetAction : - public QAction + class AddArmarXWidgetAction : public QAction { Q_OBJECT public: - AddArmarXWidgetAction(QString widgetName, QObject* parent = 0, ArmarXMainWindow* mainGui = 0); + AddArmarXWidgetAction(QString widgetName, + QObject* parent = 0, + ArmarXMainWindow* mainGui = 0); ~AddArmarXWidgetAction() override; public slots: @@ -315,24 +321,25 @@ namespace armarx signals: void clicked(QString widgetName, QString customInstanceName); void accepted(); + private: ArmarXMainWindow* mainGui; WidgetNameDialog* dialog; }; - class OpenRecentlyOpenedFileAction : - public QAction + class OpenRecentlyOpenedFileAction : public QAction { Q_OBJECT public: - OpenRecentlyOpenedFileAction(QString text, QObject* parent = 0, ArmarXMainWindow* mainGui = 0); - public slots : + OpenRecentlyOpenedFileAction(QString text, + QObject* parent = 0, + ArmarXMainWindow* mainGui = 0); + public slots: void openFile(); + private: ArmarXMainWindow* mainGui; }; - -} - +} // namespace armarx -- GitLab