From faa79e44f12404bfb197487c1db3f3164f72d611 Mon Sep 17 00:00:00 2001 From: Eberhard Graether Date: Thu, 3 Dec 2015 19:09:42 +0100 Subject: [PATCH] ui: added help texts to directory list boxes * added a ? button to the labels of the directory list boxes to show help messages * added a window stack to QtMainWindow for easier screen handling * added a button to the preferences in the project setup * removed 'has seen settings' flag from AppSettings --- bin/app/data/ApplicationSettings_template.xml | 4 +- bin/app/data/gui/setting_window/window.css | 14 ++ src/app/qt/view/QtMainView.cpp | 2 +- src/app/qt/window/QtAbout.cpp | 14 +- src/app/qt/window/QtAbout.h | 8 +- src/app/qt/window/QtAboutLicense.cpp | 8 +- src/app/qt/window/QtAboutLicense.h | 7 +- .../qt/window/QtApplicationSettingsScreen.cpp | 29 +++- .../qt/window/QtApplicationSettingsScreen.h | 3 + src/app/qt/window/QtMainWindow.cpp | 160 ++++++++---------- src/app/qt/window/QtMainWindow.h | 15 +- src/app/qt/window/QtProjectSetupScreen.cpp | 55 +++++- src/app/qt/window/QtProjectSetupScreen.h | 15 +- src/app/qt/window/QtSettingsWindow.cpp | 39 +++++ src/app/qt/window/QtSettingsWindow.h | 7 + src/lib/settings/ApplicationSettings.cpp | 10 -- src/lib/settings/ApplicationSettings.h | 3 - 17 files changed, 235 insertions(+), 158 deletions(-) diff --git a/bin/app/data/ApplicationSettings_template.xml b/bin/app/data/ApplicationSettings_template.xml index 4926a354..7defdc5b 100644 --- a/bin/app/data/ApplicationSettings_template.xml +++ b/bin/app/data/ApplicationSettings_template.xml @@ -40,13 +40,11 @@ - - - + diff --git a/bin/app/data/gui/setting_window/window.css b/bin/app/data/gui/setting_window/window.css index 7ae5d71a..75c5bc12 100644 --- a/bin/app/data/gui/setting_window/window.css +++ b/bin/app/data/gui/setting_window/window.css @@ -31,6 +31,20 @@ QLineEdit:disabled { font-weight: bold; } +#form #help { + background: transparent; + border: 1px solid #575656; + border-radius: 9px; + color: #575656; + height: 16px; + width: 16px; +} + +#form #help:hover { + border-color: black; + color: black; +} + #moreButton { background-color: rgba(255, 255, 255, 200); border: 1px solid lightgray; diff --git a/src/app/qt/view/QtMainView.cpp b/src/app/qt/view/QtMainView.cpp index dc909403..a64579de 100644 --- a/src/app/qt/view/QtMainView.cpp +++ b/src/app/qt/view/QtMainView.cpp @@ -68,7 +68,7 @@ void QtMainView::setStatusBar(QStatusBar* statusbar) void QtMainView::hideStartScreen() { - m_window->hideScreens(); + m_window->clearWindows(); } void QtMainView::setTitle(const std::string& title) diff --git a/src/app/qt/window/QtAbout.cpp b/src/app/qt/window/QtAbout.cpp index 4c38317b..88eabf67 100644 --- a/src/app/qt/window/QtAbout.cpp +++ b/src/app/qt/window/QtAbout.cpp @@ -95,20 +95,18 @@ void QtAbout::setup() closeButton->setObjectName("closeButton"); closeButton->move(320, 20); - connect(closeButton, SIGNAL(clicked()), this, SLOT(handleDoneButtonPress())); + connect(closeButton, SIGNAL(clicked()), this, SLOT(handleCloseButtonPress())); +} + +void QtAbout::handleCloseButtonPress() +{ + emit finished(); } void QtAbout::handleCancelButtonPress() { - emit canceled(); } void QtAbout::handleUpdateButtonPress() { - close(); -} - -void QtAbout::handleDoneButtonPress() -{ - close(); } diff --git a/src/app/qt/window/QtAbout.h b/src/app/qt/window/QtAbout.h index 0c024cb5..d30c4d1a 100644 --- a/src/app/qt/window/QtAbout.h +++ b/src/app/qt/window/QtAbout.h @@ -18,14 +18,10 @@ public: virtual void setup() override; private slots: + void handleCloseButtonPress(); + void handleCancelButtonPress(); void handleUpdateButtonPress(); - void handleDoneButtonPress(); - -private: - QPushButton* m_cancelButton; - QPushButton* m_updateButton; - }; #endif //QT_ABOUT_H diff --git a/src/app/qt/window/QtAboutLicense.cpp b/src/app/qt/window/QtAboutLicense.cpp index db13806a..3e86188d 100644 --- a/src/app/qt/window/QtAboutLicense.cpp +++ b/src/app/qt/window/QtAboutLicense.cpp @@ -57,15 +57,9 @@ void QtAboutLicense::populateForm(QFormLayout* layout) void QtAboutLicense::handleCancelButtonPress() { - emit canceled(); } void QtAboutLicense::handleUpdateButtonPress() { - close(); -} - -void QtAboutLicense::handleDoneButtonPress() -{ - close(); + emit finished(); } diff --git a/src/app/qt/window/QtAboutLicense.h b/src/app/qt/window/QtAboutLicense.h index 00f86616..deae2ab1 100644 --- a/src/app/qt/window/QtAboutLicense.h +++ b/src/app/qt/window/QtAboutLicense.h @@ -16,18 +16,13 @@ public: QSize sizeHint() const Q_DECL_OVERRIDE; virtual void setup() override; + protected: virtual void populateForm(QFormLayout* layout) override; private slots: void handleCancelButtonPress(); void handleUpdateButtonPress(); - void handleDoneButtonPress(); - -private: - QPushButton* m_cancelButton; - QPushButton* m_updateButton; - }; #endif //QT_ABOUT_LICENSE_H diff --git a/src/app/qt/window/QtApplicationSettingsScreen.cpp b/src/app/qt/window/QtApplicationSettingsScreen.cpp index e26d3ce2..f5687fa4 100644 --- a/src/app/qt/window/QtApplicationSettingsScreen.cpp +++ b/src/app/qt/window/QtApplicationSettingsScreen.cpp @@ -45,18 +45,21 @@ void QtApplicationSettingsScreen::load() void QtApplicationSettingsScreen::populateForm(QFormLayout* layout) { int minimumWidthForSecondCol = 360; + QPushButton* helpButton; - QLabel* includePathsLabel = new QLabel("Include Paths"); + QWidget* includePathsWidget = createLabelWithHelpButton("Header\nSearch Paths", &helpButton); + connect(helpButton, SIGNAL(clicked()), this, SLOT(handleIncludePathHelpPress())); m_includePaths = new QtDirectoryListBox(this); m_includePaths->setMinimumWidth(minimumWidthForSecondCol); - layout->addRow(includePathsLabel, m_includePaths); + layout->addRow(includePathsWidget, m_includePaths); if (QSysInfo::macVersion() != QSysInfo::MV_None) { - QLabel* frameworkPathsLabel = new QLabel("Framework Paths"); + QWidget* frameworkPathsWidget = createLabelWithHelpButton("Framework\nSearch Paths", &helpButton); + connect(helpButton, SIGNAL(clicked()), this, SLOT(handleFrameworkPathHelpPress())); m_frameworkPaths = new QtDirectoryListBox(this); m_frameworkPaths->setMinimumWidth(minimumWidthForSecondCol); - layout->addRow(frameworkPathsLabel, m_frameworkPaths); + layout->addRow(frameworkPathsWidget, m_frameworkPaths); } } @@ -81,3 +84,21 @@ void QtApplicationSettingsScreen::handleUpdateButtonPress() MessageRefresh().dispatch(); emit finished(); } + +void QtApplicationSettingsScreen::handleIncludePathHelpPress() +{ + showHelpMessage( + "Header Search Paths define where additional headers, that your project depends on, are found. Usually they are " + "header files of frameworks or libraries that your project uses. These files won't be analysed, but Coati needs " + "them for correct analysis.\n\n" + "Header Search Paths defined here will be used for all projects." + ); +} + +void QtApplicationSettingsScreen::handleFrameworkPathHelpPress() +{ + showHelpMessage( + "Framework Search Paths define where MacOS framework containers, that your project depends on, are found.\n\n" + "Framework Search Paths defined here will be used for all projects." + ); +} diff --git a/src/app/qt/window/QtApplicationSettingsScreen.h b/src/app/qt/window/QtApplicationSettingsScreen.h index 7bf07095..0b20b04b 100644 --- a/src/app/qt/window/QtApplicationSettingsScreen.h +++ b/src/app/qt/window/QtApplicationSettingsScreen.h @@ -29,6 +29,9 @@ private slots: void handleCancelButtonPress(); void handleUpdateButtonPress(); + void handleIncludePathHelpPress(); + void handleFrameworkPathHelpPress(); + private: QPushButton* m_cancelButton; QPushButton* m_updateButton; diff --git a/src/app/qt/window/QtMainWindow.cpp b/src/app/qt/window/QtMainWindow.cpp index 2ff91f0f..578ae9d5 100644 --- a/src/app/qt/window/QtMainWindow.cpp +++ b/src/app/qt/window/QtMainWindow.cpp @@ -45,7 +45,6 @@ void QtViewToggle::toggledByUI() } QtMainWindow::QtMainWindow() - : m_startScreenWasVisible(false) { setObjectName("QtMainWindow"); setCentralWidget(nullptr); @@ -72,25 +71,12 @@ QtMainWindow::QtMainWindow() void QtMainWindow::init() { - ApplicationSettings* appSettings = ApplicationSettings::getInstance().get(); - - if (appSettings->getUserHasSeenSettings()) - { - showStartScreen(); - } - else - { - openSettings(); - m_startScreenWasVisible = true; - - appSettings->setUserHasSeenSettings(true); - appSettings->save(); - } + showStartScreen(); } QtMainWindow::~QtMainWindow() { - if(m_recentProjectAction) + if (m_recentProjectAction) { delete [] m_recentProjectAction; } @@ -192,118 +178,114 @@ bool QtMainWindow::event(QEvent* event) return QMainWindow::event(event); } +void QtMainWindow::pushWindow(QWidget* window) +{ + if (m_windowStack.size()) + { + m_windowStack.back()->hide(); + } + + window->show(); + + m_windowStack.push_back(window); +} + +void QtMainWindow::popWindow() +{ + if (m_windowStack.size()) + { + m_windowStack.back()->hide(); + m_windowStack.pop_back(); + } + + if (m_windowStack.size()) + { + m_windowStack.back()->show(); + } +} + +void QtMainWindow::clearWindows() +{ + if (m_windowStack.size()) + { + m_windowStack.back()->hide(); + } + + m_windowStack.clear(); +} + void QtMainWindow::about() { - hideScreens(); - if (!m_aboutWindow) { m_aboutWindow = std::make_shared(this); m_aboutWindow->setup(); - connect(m_aboutWindow.get(), SIGNAL(finished()), this, SLOT(closeScreens())); - connect(m_aboutWindow.get(), SIGNAL(canceled()), this, SLOT(restoreScreens())); + connect(m_aboutWindow.get(), SIGNAL(finished()), this, SLOT(popWindow())); } - m_aboutWindow->show(); -} - -void QtMainWindow::hideScreens() -{ - if (m_applicationSettingsScreen) - { - m_applicationSettingsScreen->hide(); - } - - if (m_startScreen) - { - m_startScreen->hide(); - } - - if (m_newProjectDialog) - { - m_newProjectDialog->hide(); - } - - if(m_licenseWindow) - { - m_licenseWindow->hide(); - } - - if(m_aboutWindow) - { - m_aboutWindow->hide(); - } -} - -void QtMainWindow::closeScreens() -{ - hideScreens(); - m_startScreenWasVisible = false; -} - -void QtMainWindow::restoreScreens() -{ - if (m_startScreenWasVisible) - { - showStartScreen(); - } - else - { - closeScreens(); - } + pushWindow(m_aboutWindow.get()); } void QtMainWindow::openSettings() { - hideScreens(); - if (!m_applicationSettingsScreen) { m_applicationSettingsScreen = std::make_shared(this); m_applicationSettingsScreen->setup(); - connect(m_applicationSettingsScreen.get(), SIGNAL(finished()), this, SLOT(restoreScreens())); - connect(m_applicationSettingsScreen.get(), SIGNAL(canceled()), this, SLOT(restoreScreens())); + + connect(m_applicationSettingsScreen.get(), SIGNAL(finished()), this, SLOT(popWindow())); + connect(m_applicationSettingsScreen.get(), SIGNAL(canceled()), this, SLOT(popWindow())); } m_applicationSettingsScreen->load(); - m_applicationSettingsScreen->show(); + pushWindow(m_applicationSettingsScreen.get()); +} + +void QtMainWindow::showLicenses() +{ + if (!m_licenseWindow) + { + m_licenseWindow = std::make_shared(this); + m_licenseWindow->setup(); + + connect(m_licenseWindow.get(), SIGNAL(finished()), this, SLOT(popWindow())); + } + + pushWindow(m_licenseWindow.get()); } void QtMainWindow::showStartScreen() { - hideScreens(); - if (!m_startScreen) { m_startScreen = std::make_shared(this); m_startScreen->setup(); - connect(m_startScreen.get(), SIGNAL(finished()), this, SLOT(closeScreens())); - connect(m_startScreen.get(), SIGNAL(canceled()), this, SLOT(closeScreens())); + + connect(m_startScreen.get(), SIGNAL(finished()), this, SLOT(popWindow())); + connect(m_startScreen.get(), SIGNAL(canceled()), this, SLOT(popWindow())); connect(m_startScreen.get(), SIGNAL(openOpenProjectDialog()), this, SLOT(openProject())); connect(m_startScreen.get(), SIGNAL(openNewProjectDialog()), this, SLOT(newProject())); } - m_startScreen->show(); - m_startScreenWasVisible = true; + pushWindow(m_startScreen.get()); } void QtMainWindow::newProject() { - hideScreens(); - if (!m_newProjectDialog) { m_newProjectDialog = std::make_shared(this); m_newProjectDialog->setup(); - connect(m_newProjectDialog.get(), SIGNAL(finished()), this, SLOT(closeScreens())); - connect(m_newProjectDialog.get(), SIGNAL(canceled()), this, SLOT(restoreScreens())); + connect(m_newProjectDialog.get(), SIGNAL(finished()), this, SLOT(clearWindows())); + connect(m_newProjectDialog.get(), SIGNAL(canceled()), this, SLOT(popWindow())); + connect(m_newProjectDialog.get(), SIGNAL(showPreferences()), this, SLOT(openSettings())); } m_newProjectDialog->loadEmpty(); - m_newProjectDialog->show(); + pushWindow(m_newProjectDialog.get()); } void QtMainWindow::openProject(const QString &path) @@ -318,7 +300,7 @@ void QtMainWindow::openProject(const QString &path) if (!fileName.isEmpty()) { MessageLoadProject(fileName.toStdString()).dispatch(); - closeScreens(); + clearWindows(); } } @@ -416,7 +398,7 @@ void QtMainWindow::toggleView(View* view, bool fromMenu) void QtMainWindow::handleEscapeShortcut() { - closeScreens(); + popWindow(); MessageInterruptTasks().dispatch(); } @@ -489,14 +471,6 @@ void QtMainWindow::setWindowSettingsPath(const std::string& windowSettingsPath) m_windowSettingsPath = windowSettingsPath; } -void QtMainWindow::showLicenses() -{ - hideScreens(); - m_licenseWindow = std::make_shared(this); - m_licenseWindow->setup(); - m_licenseWindow->show(); -} - void QtMainWindow::setupEditMenu() { QMenu *menu = new QMenu(tr("&Edit"), this); diff --git a/src/app/qt/window/QtMainWindow.h b/src/app/qt/window/QtMainWindow.h index f9bbb614..a5b7de5e 100644 --- a/src/app/qt/window/QtMainWindow.h +++ b/src/app/qt/window/QtMainWindow.h @@ -56,12 +56,14 @@ protected: bool event(QEvent* event); public slots: - void about(); - void hideScreens(); - void closeScreens(); - void restoreScreens(); + void pushWindow(QWidget* window); + void popWindow(); + void clearWindows(); + void about(); void openSettings(); + void showLicenses(); + void showStartScreen(); void newProject(); void openProject(const QString &path = QString()); @@ -76,7 +78,6 @@ public slots: void saveProject(); void saveAsProject(); - void showLicenses(); void undo(); void redo(); @@ -121,9 +122,9 @@ private: std::shared_ptr m_licenseWindow; std::shared_ptr m_aboutWindow; - QShortcut* m_escapeShortcut; + std::vector m_windowStack; - bool m_startScreenWasVisible; + QShortcut* m_escapeShortcut; static std::string m_windowSettingsPath; }; diff --git a/src/app/qt/window/QtProjectSetupScreen.cpp b/src/app/qt/window/QtProjectSetupScreen.cpp index eaabe7b2..4b216215 100644 --- a/src/app/qt/window/QtProjectSetupScreen.cpp +++ b/src/app/qt/window/QtProjectSetupScreen.cpp @@ -83,6 +83,13 @@ void QtProjectSetupScreen::clear() void QtProjectSetupScreen::setup() { setupForm(); + + QPushButton* preferencesButton = new QPushButton("Preferences"); + preferencesButton->setObjectName("windowButton"); + connect(preferencesButton, SIGNAL(clicked()), this, SLOT(handlePreferencesButtonPress())); + + m_buttonsLayout->insertWidget(2, preferencesButton); + m_buttonsLayout->insertStretch(3); } void QtProjectSetupScreen::loadEmpty() @@ -131,22 +138,27 @@ void QtProjectSetupScreen::populateForm(QFormLayout* layout) language->insertItem(0, "C++"); layout->addRow(languageLabel, language); - QLabel* sourcePathsLabel = new QLabel("Source Paths"); + QPushButton* helpButton; + + QWidget* sourcePathsWidget = createLabelWithHelpButton("Source Paths", &helpButton); + connect(helpButton, SIGNAL(clicked()), this, SLOT(handleSourcePathHelpPress())); m_sourcePaths = new QtDirectoryListBox(this); m_sourcePaths->setMinimumWidth(minimumWidthForSecondCol); - layout->addRow(sourcePathsLabel, m_sourcePaths); + layout->addRow(sourcePathsWidget, m_sourcePaths); - QLabel* includePathsLabel = new QLabel("Include Paths"); + QWidget* includePathsWidget = createLabelWithHelpButton("Header\nSearch Paths", &helpButton); + connect(helpButton, SIGNAL(clicked()), this, SLOT(handleIncludePathHelpPress())); m_includePaths = new QtDirectoryListBox(this); m_includePaths->setMinimumWidth(minimumWidthForSecondCol); - layout->addRow(includePathsLabel, m_includePaths); + layout->addRow(includePathsWidget, m_includePaths); if (QSysInfo::macVersion() != QSysInfo::MV_None) { - QLabel* frameworkPathsLabel = new QLabel("Framework Paths"); + QWidget* frameworkPathsWidget = createLabelWithHelpButton("Framework\nSearch Paths", &helpButton); + connect(helpButton, SIGNAL(clicked()), this, SLOT(handleFrameworkPathHelpPress())); m_frameworkPaths = new QtDirectoryListBox(this); m_frameworkPaths->setMinimumWidth(minimumWidthForSecondCol); - layout->addRow(frameworkPathsLabel, m_frameworkPaths); + layout->addRow(frameworkPathsWidget, m_frameworkPaths); } } @@ -202,3 +214,34 @@ void QtProjectSetupScreen::handleUpdateButtonPress() emit finished(); } + +void QtProjectSetupScreen::handleSourcePathHelpPress() +{ + showHelpMessage( + "Source Paths define the files and directories that will be analysed by Coati. Usually these are the source " + "files of your project or a subset of them." + ); +} + +void QtProjectSetupScreen::handleIncludePathHelpPress() +{ + showHelpMessage( + "Header Search Paths define where additional headers, that your project depends on, are found. Usually they are " + "header files of frameworks or libraries that your project uses. These files won't be analysed, but Coati needs " + "them for correct analysis.\n\n" + "Please note that you can define Header Search Paths for all your projects in Coati's preferences." + ); +} + +void QtProjectSetupScreen::handleFrameworkPathHelpPress() +{ + showHelpMessage( + "Framework Search Paths define where MacOS framework containers, that your project depends on, are found.\n\n" + "Please note that you can define Framework Search Paths for all your projects in Coati's preferences." + ); +} + +void QtProjectSetupScreen::handlePreferencesButtonPress() +{ + emit showPreferences(); +} diff --git a/src/app/qt/window/QtProjectSetupScreen.h b/src/app/qt/window/QtProjectSetupScreen.h index 5bb44a6e..e731be6a 100644 --- a/src/app/qt/window/QtProjectSetupScreen.h +++ b/src/app/qt/window/QtProjectSetupScreen.h @@ -47,6 +47,9 @@ public: void projectSetupScreen(); +signals: + void showPreferences(); + protected: virtual void populateForm(QFormLayout* layout) override; @@ -54,17 +57,21 @@ private slots: void handleCancelButtonPress(); void handleUpdateButtonPress(); + void handleSourcePathHelpPress(); + void handleIncludePathHelpPress(); + void handleFrameworkPathHelpPress(); + + void handlePreferencesButtonPress(); + private: QLineEdit* m_projectName; QtTextLine* m_projectFileLocation; - QPushButton* m_createButton; - QPushButton* m_cancelButton; - QPushButton* m_updateButton; - QtDirectoryListBox* m_includePaths; QtDirectoryListBox* m_sourcePaths; QtDirectoryListBox* m_frameworkPaths; + + QPushButton* m_preferencesButton; }; #endif //QT_PROJECT_SETUP_SCREEN_H diff --git a/src/app/qt/window/QtSettingsWindow.cpp b/src/app/qt/window/QtSettingsWindow.cpp index 8812c07e..3543e04f 100644 --- a/src/app/qt/window/QtSettingsWindow.cpp +++ b/src/app/qt/window/QtSettingsWindow.cpp @@ -3,6 +3,7 @@ #include #include #include +#include #include #include #include @@ -150,6 +151,7 @@ void QtSettingsWindow::setupForm() buttons->addWidget(m_cancelButton); buttons->addStretch(); buttons->addWidget(m_doneButton); + m_buttonsLayout = buttons; windowLayout->addWidget(scrollArea); windowLayout->addSpacing(20); @@ -188,3 +190,40 @@ void QtSettingsWindow::hideCancelButton(bool hidden) m_cancelButton->setVisible(!hidden); } } + +QWidget* QtSettingsWindow::createLabelWithHelpButton(QString name, QPushButton** helpButton) +{ + QWidget* widget = new QWidget(); + + QVBoxLayout* layout = new QVBoxLayout(); + layout->setContentsMargins(0, 5, 0, 5); + layout->setSpacing(5); + + QLabel* label = new QLabel(name); + label->setAlignment(Qt::AlignRight); + layout->addWidget(label); + + QPushButton* button = new QPushButton("?"); + button->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); + button->setAttribute(Qt::WA_LayoutUsesWidgetRect); // fixes layouting on Mac + button->setObjectName("help"); + + layout->addWidget(button, 0, Qt::AlignRight); + layout->addStretch(); + + widget->setLayout(layout); + + *helpButton = button; + + return widget; +} + +void QtSettingsWindow::showHelpMessage(const QString& msg) +{ + QMessageBox msgBox; + msgBox.setText("Help"); + msgBox.setInformativeText(msg); + msgBox.setStandardButtons(QMessageBox::Ok); + msgBox.setDefaultButton(QMessageBox::Ok); + int ret = msgBox.exec(); +} diff --git a/src/app/qt/window/QtSettingsWindow.h b/src/app/qt/window/QtSettingsWindow.h index a72d147e..46604658 100644 --- a/src/app/qt/window/QtSettingsWindow.h +++ b/src/app/qt/window/QtSettingsWindow.h @@ -1,6 +1,7 @@ #ifndef QT_SETTINGS_WINDOW_H #define QT_SETTINGS_WINDOW_H +#include #include #include @@ -38,6 +39,10 @@ protected: void updateDoneButton(QString text); void hideCancelButton(bool hidden); + QWidget* createLabelWithHelpButton(QString name, QPushButton** helpButton); + + void showHelpMessage(const QString& msg); + QWidget* m_window; QLabel* m_title; @@ -45,6 +50,8 @@ protected: QPushButton* m_cancelButton; QPushButton* m_doneButton; + QHBoxLayout* m_buttonsLayout; + private: int m_displacment; QPoint m_dragPosition; diff --git a/src/lib/settings/ApplicationSettings.cpp b/src/lib/settings/ApplicationSettings.cpp index d98e33ce..752532ae 100644 --- a/src/lib/settings/ApplicationSettings.cpp +++ b/src/lib/settings/ApplicationSettings.cpp @@ -131,16 +131,6 @@ bool ApplicationSettings::setRecentProjects(const std::vector &recentP return setPathValues("user/recent_projects/recent_project", recentProjects); } -bool ApplicationSettings::getUserHasSeenSettings() const -{ - return getValue("user/has_seen_settings", false); -} - -void ApplicationSettings::setUserHasSeenSettings(bool hasSeenSettings) -{ - setValue("user/has_seen_settings", hasSeenSettings); -} - int ApplicationSettings::getPluginPort() const { return getValue("network/plugin_port", 6666); diff --git a/src/lib/settings/ApplicationSettings.h b/src/lib/settings/ApplicationSettings.h index a4dbe1c6..a0b24158 100644 --- a/src/lib/settings/ApplicationSettings.h +++ b/src/lib/settings/ApplicationSettings.h @@ -49,9 +49,6 @@ public: void setCodeSnippetExpandRange(int range); // user - bool getUserHasSeenSettings() const; - void setUserHasSeenSettings(bool hasSeenSettings); - std::vector getRecentProjects() const; bool setRecentProjects(const std::vector& recentProjects);