]> cloud.milkyroute.net Git - dolphin.git/commitdiff
Introduce HAVE_TERMINAL
authorElvis Angelaccio <elvis.angelaccio@kde.org>
Mon, 28 Jan 2019 21:38:21 +0000 (22:38 +0100)
committerElvis Angelaccio <elvis.angelaccio@kde.org>
Mon, 28 Jan 2019 21:38:21 +0000 (22:38 +0100)
Source code should check for features detected during configure-time,
rather than checking for a specific OS.

See also commit 87e8d0ba5f.

CMakeLists.txt
src/CMakeLists.txt
src/config-terminal.h.cmake [new file with mode: 0644]
src/dolphinmainwindow.cpp
src/settings/general/confirmationssettingspage.cpp
src/settings/general/confirmationssettingspage.h

index f04d7992de0d167c5d2d4b6e8f93005e9f96e340..dc877c89cf30fbfec17ccbafc8dd45f6ad6ef79a 100644 (file)
@@ -98,6 +98,13 @@ else()
     message(WARNING "Baloo packages not found. They are needed for the metadata features of Dolphin (including the information panel).")
 endif()
 
     message(WARNING "Baloo packages not found. They are needed for the metadata features of Dolphin (including the information panel).")
 endif()
 
+# TODO: drop HAVE_TERMINAL once we are sure the terminal panel works on Windows too.
+if(WIN32)
+    set(HAVE_TERMINAL FALSE)
+else()
+    set(HAVE_TERMINAL TRUE)
+endif()
+
 add_subdirectory(src)
 add_subdirectory(doc)
 
 add_subdirectory(src)
 add_subdirectory(doc)
 
index 7222dcde1d8d8e270916934b098431412270133d..1b4c943d4166c49c27f530189fb1d1ef87629a76 100644 (file)
@@ -4,6 +4,8 @@ configure_file(config-baloo.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-baloo.h)
 
 configure_file(config-dolphin.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-dolphin.h)
 
 
 configure_file(config-dolphin.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-dolphin.h)
 
+configure_file(config-terminal.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-terminal.h)
+
 add_definitions(
     -DTRANSLATION_DOMAIN=\"dolphin\"
 )
 add_definitions(
     -DTRANSLATION_DOMAIN=\"dolphin\"
 )
diff --git a/src/config-terminal.h.cmake b/src/config-terminal.h.cmake
new file mode 100644 (file)
index 0000000..ef77ac7
--- /dev/null
@@ -0,0 +1 @@
+#cmakedefine HAVE_TERMINAL
index ea19468f93277ec738cc1d9ce1b59ad96f6038bd..076869c1ac0bea75365e03745582b9e53708f580 100644 (file)
@@ -21,6 +21,7 @@
 
 #include "dolphinmainwindow.h"
 
 
 #include "dolphinmainwindow.h"
 
+#include "config-terminal.h"
 #include "global.h"
 #include "dolphindockwidget.h"
 #include "dolphincontextmenu.h"
 #include "global.h"
 #include "dolphindockwidget.h"
 #include "dolphincontextmenu.h"
@@ -1213,7 +1214,7 @@ void DolphinMainWindow::setupActions()
     compareFiles->setEnabled(false);
     connect(compareFiles, &QAction::triggered, this, &DolphinMainWindow::compareFiles);
 
     compareFiles->setEnabled(false);
     connect(compareFiles, &QAction::triggered, this, &DolphinMainWindow::compareFiles);
 
-#ifndef Q_OS_WIN
+#ifdef HAVE_TERMINAL
     if (KAuthorized::authorize(QStringLiteral("shell_access"))) {
         QAction* openTerminal = actionCollection()->addAction(QStringLiteral("open_terminal"));
         openTerminal->setText(i18nc("@action:inmenu Tools", "Open Terminal"));
     if (KAuthorized::authorize(QStringLiteral("shell_access"))) {
         QAction* openTerminal = actionCollection()->addAction(QStringLiteral("open_terminal"));
         openTerminal->setText(i18nc("@action:inmenu Tools", "Open Terminal"));
@@ -1332,7 +1333,7 @@ void DolphinMainWindow::setupDockWidgets()
             this, &DolphinMainWindow::showErrorMessage);
 
     // Setup "Terminal"
             this, &DolphinMainWindow::showErrorMessage);
 
     // Setup "Terminal"
-#ifndef Q_OS_WIN
+#ifdef HAVE_TERMINAL
     if (KAuthorized::authorize(QStringLiteral("shell_access"))) {
         DolphinDockWidget* terminalDock = new DolphinDockWidget(i18nc("@title:window Shell terminal", "Terminal"));
         terminalDock->setLocked(lock);
     if (KAuthorized::authorize(QStringLiteral("shell_access"))) {
         DolphinDockWidget* terminalDock = new DolphinDockWidget(i18nc("@title:window Shell terminal", "Terminal"));
         terminalDock->setLocked(lock);
index 27e4ab662f2bd27e1d7af8c4e4d27ecf0c483e13..1d0eebdd36f1cdbdc2eeb60c7a0eeab636c887e1 100644 (file)
@@ -41,9 +41,9 @@ ConfirmationsSettingsPage::ConfirmationsSettingsPage(QWidget* parent) :
     m_confirmEmptyTrash(nullptr),
     m_confirmDelete(nullptr),
 
     m_confirmEmptyTrash(nullptr),
     m_confirmDelete(nullptr),
 
-    #ifndef Q_OS_WIN
+#ifdef HAVE_TERMINAL
     m_confirmClosingTerminalRunningProgram(nullptr),
     m_confirmClosingTerminalRunningProgram(nullptr),
-    #endif
+#endif
 
     m_confirmClosingMultipleTabs(nullptr)
 {
 
     m_confirmClosingMultipleTabs(nullptr)
 {
@@ -67,10 +67,10 @@ ConfirmationsSettingsPage::ConfirmationsSettingsPage(QWidget* parent) :
     m_confirmClosingMultipleTabs = new QCheckBox(i18nc("@option:check Ask for confirmation in Dolphin when",
                                                        "Closing windows with multiple tabs"), this);
 
     m_confirmClosingMultipleTabs = new QCheckBox(i18nc("@option:check Ask for confirmation in Dolphin when",
                                                        "Closing windows with multiple tabs"), this);
 
-    #ifndef Q_OS_WIN
+#ifdef HAVE_TERMINAL
     m_confirmClosingTerminalRunningProgram = new QCheckBox(i18nc("@option:check Ask for confirmation when",
                                                        "Closing windows with a program running in the Terminal panel"), this);
     m_confirmClosingTerminalRunningProgram = new QCheckBox(i18nc("@option:check Ask for confirmation when",
                                                        "Closing windows with a program running in the Terminal panel"), this);
-    #endif
+#endif
 
     topLayout->addWidget(confirmLabelKde);
     topLayout->addWidget(m_confirmMoveToTrash);
 
     topLayout->addWidget(confirmLabelKde);
     topLayout->addWidget(m_confirmMoveToTrash);
@@ -81,9 +81,9 @@ ConfirmationsSettingsPage::ConfirmationsSettingsPage(QWidget* parent) :
     topLayout->addWidget(confirmLabelDolphin);
     topLayout->addWidget(m_confirmClosingMultipleTabs);
 
     topLayout->addWidget(confirmLabelDolphin);
     topLayout->addWidget(m_confirmClosingMultipleTabs);
 
-    #ifndef Q_OS_WIN
+#ifdef HAVE_TERMINAL
     topLayout->addWidget(m_confirmClosingTerminalRunningProgram);
     topLayout->addWidget(m_confirmClosingTerminalRunningProgram);
-    #endif
+#endif
 
     topLayout->addStretch();
 
 
     topLayout->addStretch();
 
@@ -95,9 +95,9 @@ ConfirmationsSettingsPage::ConfirmationsSettingsPage(QWidget* parent) :
     connect(m_confirmScriptExecution, &QCheckBox::toggled, this, &ConfirmationsSettingsPage::changed);
     connect(m_confirmClosingMultipleTabs, &QCheckBox::toggled, this, &ConfirmationsSettingsPage::changed);
 
     connect(m_confirmScriptExecution, &QCheckBox::toggled, this, &ConfirmationsSettingsPage::changed);
     connect(m_confirmClosingMultipleTabs, &QCheckBox::toggled, this, &ConfirmationsSettingsPage::changed);
 
-    #ifndef Q_OS_WIN
+#ifdef HAVE_TERMINAL
     connect(m_confirmClosingTerminalRunningProgram, &QCheckBox::toggled, this, &ConfirmationsSettingsPage::changed);
     connect(m_confirmClosingTerminalRunningProgram, &QCheckBox::toggled, this, &ConfirmationsSettingsPage::changed);
-    #endif
+#endif
 }
 
 ConfirmationsSettingsPage::~ConfirmationsSettingsPage()
 }
 
 ConfirmationsSettingsPage::~ConfirmationsSettingsPage()
@@ -123,9 +123,9 @@ void ConfirmationsSettingsPage::applySettings()
     GeneralSettings* settings = GeneralSettings::self();
     settings->setConfirmClosingMultipleTabs(m_confirmClosingMultipleTabs->isChecked());
 
     GeneralSettings* settings = GeneralSettings::self();
     settings->setConfirmClosingMultipleTabs(m_confirmClosingMultipleTabs->isChecked());
 
-    #ifndef Q_OS_WIN
+#ifdef HAVE_TERMINAL
     settings->setConfirmClosingTerminalRunningProgram(m_confirmClosingTerminalRunningProgram->isChecked());
     settings->setConfirmClosingTerminalRunningProgram(m_confirmClosingTerminalRunningProgram->isChecked());
-    #endif
+#endif
 
     settings->save();
 }
 
     settings->save();
 }
@@ -157,8 +157,8 @@ void ConfirmationsSettingsPage::loadSettings()
 
     m_confirmClosingMultipleTabs->setChecked(GeneralSettings::confirmClosingMultipleTabs());
 
 
     m_confirmClosingMultipleTabs->setChecked(GeneralSettings::confirmClosingMultipleTabs());
 
-    #ifndef Q_OS_WIN
+#ifdef HAVE_TERMINAL
     m_confirmClosingTerminalRunningProgram->setChecked(GeneralSettings::confirmClosingTerminalRunningProgram());
     m_confirmClosingTerminalRunningProgram->setChecked(GeneralSettings::confirmClosingTerminalRunningProgram());
-    #endif
+#endif
 }
 
 }
 
index a96af554d530d8270e9e9a519ceb9cb80531b09a..52b101b2a228216e0881dea5e7ca31000a8865ca 100644 (file)
@@ -19,6 +19,7 @@
 #ifndef CONFIRMATIONSSETTINGSPAGE_H
 #define CONFIRMATIONSSETTINGSPAGE_H
 
 #ifndef CONFIRMATIONSSETTINGSPAGE_H
 #define CONFIRMATIONSSETTINGSPAGE_H
 
+#include "config-terminal.h"
 #include "settings/settingspagebase.h"
 
 class QCheckBox;
 #include "settings/settingspagebase.h"
 
 class QCheckBox;
@@ -48,9 +49,9 @@ private:
     QCheckBox* m_confirmEmptyTrash;
     QCheckBox* m_confirmDelete;
 
     QCheckBox* m_confirmEmptyTrash;
     QCheckBox* m_confirmDelete;
 
-    #ifndef Q_OS_WIN
+#ifdef HAVE_TERMINAL
     QCheckBox* m_confirmClosingTerminalRunningProgram;
     QCheckBox* m_confirmClosingTerminalRunningProgram;
-    #endif
+#endif
 
     QCheckBox* m_confirmClosingMultipleTabs;
     QCheckBox* m_confirmScriptExecution;
 
     QCheckBox* m_confirmClosingMultipleTabs;
     QCheckBox* m_confirmScriptExecution;