From 3e709f549d191d26f1a1e9b5e17124928460401b Mon Sep 17 00:00:00 2001 From: arcan1s Date: Fri, 16 Jan 2015 04:09:39 +0300 Subject: [PATCH] port dataengine to kf5 --- sources/CMakeLists.txt | 6 +- sources/ext-sysmon/CMakeLists.txt | 9 +-- sources/ext-sysmon/extsysmon.cpp | 80 ++++++++++--------- .../plasma-dataengine-extsysmon.conf | 5 +- ...op => plasma-dataengine-extsysmon.desktop} | 0 5 files changed, 51 insertions(+), 49 deletions(-) rename sources/ext-sysmon/{plasma-engine-extsysmon.desktop => plasma-dataengine-extsysmon.desktop} (100%) diff --git a/sources/CMakeLists.txt b/sources/CMakeLists.txt index fad0b9a..2cef46b 100644 --- a/sources/CMakeLists.txt +++ b/sources/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required (VERSION 2.8) +cmake_minimum_required (VERSION 2.8.12) cmake_policy (SET CMP0003 OLD) cmake_policy (SET CMP0002 OLD) @@ -38,5 +38,5 @@ configure_file (${CMAKE_SOURCE_DIR}/version.h.in ${CMAKE_CURRENT_BINARY_DIR}/ver set (PROJECT_TRDPARTY_DIR ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty) add_subdirectory (ext-sysmon) -add_subdirectory (awesome-widget) -add_subdirectory (desktop-panel) +#add_subdirectory (awesome-widget) +#add_subdirectory (desktop-panel) diff --git a/sources/ext-sysmon/CMakeLists.txt b/sources/ext-sysmon/CMakeLists.txt index 43171a4..a29ec8b 100644 --- a/sources/ext-sysmon/CMakeLists.txt +++ b/sources/ext-sysmon/CMakeLists.txt @@ -14,7 +14,7 @@ else () find_package (Qt5 REQUIRED COMPONENTS Widgets) find_package (ECM 0.0.11 REQUIRED NO_MODULE) set (CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR}) - find_package(KF5 REQUIRED COMPONENTS Plasma Service) + find_package (KF5 REQUIRED COMPONENTS Plasma Service WindowSystem) include (KDEInstallDirs) include (KDECMakeSettings) @@ -23,10 +23,7 @@ else () add_definitions (${Qt5Core_DEFINITIONS} ${Qt5Widgets_DEFINITIONS}) set (Qt_INCLUDE ${Qt5Core_INCLUDE_DIRS} ${Qt5Widgets_INCLUDE_DIRS}) - set (KDE_INCLUDE ${ConfigCore_INCLUDE_DIR} - ${CoreAddons_INCLUDE_DIR} - ${Plasma_INCLUDE_DIR} - ${Service_INCLUDE_DIR}) + set (KDE_INCLUDE ${Plasma_INCLUDE_DIR}) endif () include_directories (${CMAKE_SOURCE_DIR} @@ -58,7 +55,7 @@ else () qt5_wrap_cpp (TASK_MOC_SOURCE ${TASK_HEADER}) qt5_wrap_ui (SUBPROJECT_UI_HEADER ${SUBPROJECT_UI}) add_library (${PLUGIN_NAME} MODULE ${SUBPROJECT_SOURCE} ${SUBPROJECT_UI_HEADER} ${TASK_MOC_SOURCE}) - target_link_libraries (${PLUGIN_NAME} ${Plasma_LIBRARIES} ${Qt5Widgets_LIBRARIES}) + target_link_libraries (${PLUGIN_NAME} ${Plasma_LIBRARIES} KF5::WindowSystem ${Qt5Widgets_LIBRARIES}) kcoreaddons_desktop_to_json (${PLUGIN_NAME} ${CMAKE_CURRENT_BINARY_DIR}/${SUBPROJECT_DESKTOP}) endif () diff --git a/sources/ext-sysmon/extsysmon.cpp b/sources/ext-sysmon/extsysmon.cpp index 1892b23..a6c3dc4 100644 --- a/sources/ext-sysmon/extsysmon.cpp +++ b/sources/ext-sysmon/extsysmon.cpp @@ -18,8 +18,8 @@ #include "extsysmon.h" -#include #include +#include #include #include @@ -27,6 +27,7 @@ #include #include #include +#include #include #include @@ -123,12 +124,27 @@ void ExtendedSysMon::initScripts() { if (debug) qDebug() << PDEBUG; - // create directory at $HOME - QString localDir = KStandardDirs::locateLocal("data", "plasma_engine_extsysmon/scripts"); + // create directory at $HOME and create dirs list + QString localDir; + QStringList dirs; +#ifdef BUILD_KDE4 + localDir = KStandardDirs::locateLocal("data", "plasma_engine_extsysmon/scripts"); if (KStandardDirs::makeDir(localDir)) if (debug) qDebug() << PDEBUG << ":" << "Created directory" << localDir; - QStringList dirs = KGlobal::dirs()->findDirs("data", "plasma_engine_extsysmon/scripts"); + dirs = KGlobal::dirs()->findDirs("data", "plasma_engine_extsysmon/scripts"); +#else + localDir = QStandardPaths::writableLocation(QStandardPaths::DataLocation) + + QString("/plasma_engine_extsysmon/scripts"); + QDir localDirectory; + if (localDirectory.mkdir(localDir)) + if (debug) qDebug() << PDEBUG << ":" << "Created directory" << localDir; + + dirs = QStandardPaths::locateAll(QStandardPaths::DataLocation, + QString("plasma_engine_extsysmon/scripts"), + QStandardPaths::LocateDirectory); +#endif /* BUILD_KDE4 */ + QStringList names; for (int i=0; i rawConfig; - rawConfig[QString("ACPIPATH")] = QString("/sys/class/power_supply/"); - rawConfig[QString("GPUDEV")] = QString("auto"); - rawConfig[QString("HDDDEV")] = QString("all"); - rawConfig[QString("HDDTEMPCMD")] = QString("sudo hddtemp"); - rawConfig[QString("MPDADDRESS")] = QString("localhost"); - rawConfig[QString("MPDPORT")] = QString("6600"); - rawConfig[QString("MPRIS")] = QString("auto"); - rawConfig[QString("PKGCMD")] = QString("pacman -Qu"); - rawConfig[QString("PKGNULL")] = QString("0"); - rawConfig[QString("PLAYER")] = QString("mpris"); - - QString fileName = KGlobal::dirs()->findResource("config", "plasma-dataengine-extsysmon.conf"); + QString fileName; +#ifdef BUILD_KDE4 + fileName = KGlobal::dirs()->findResource("config", "plasma-dataengine-extsysmon.conf"); +#else + fileName = QStandardPaths::locate(QStandardPaths::ConfigLocation, QString("plasma-dataengine-extsysmon.conf")); +#endif /* BUILD_KDE4 */ if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << fileName; - QFile configFile(fileName); - if (!configFile.open(QIODevice::ReadOnly)) { - configuration = updateConfiguration(rawConfig); - return; - } - QString fileStr; - QStringList value; - while (true) { - fileStr = QString(configFile.readLine()).trimmed(); - if ((fileStr.isEmpty()) && (!configFile.atEnd())) continue; - if ((fileStr[0] == QChar('#')) && (!configFile.atEnd())) continue; - if ((fileStr[0] == QChar(';')) && (!configFile.atEnd())) continue; - if (fileStr.contains(QChar('='))) { - value.clear(); - for (int i=1; i rawConfig; + + settings.beginGroup(QString("Configuration")); + rawConfig[QString("ACPIPATH")] = settings.value(QString("ACPIPATH"), QString("/sys/class/power_supply/")).toString(); + rawConfig[QString("GPUDEV")] = settings.value(QString("GPUDEV"), QString("auto")).toString(); + rawConfig[QString("HDDDEV")] = settings.value(QString("HDDDEV"), QString("all")).toString(); + rawConfig[QString("HDDTEMPCMD")] = settings.value(QString("HDDTEMPCMD"), QString("sudo hddtemp")).toString(); + rawConfig[QString("MPDADDRESS")] = settings.value(QString("MPDADDRESS"), QString("localhost")).toString(); + rawConfig[QString("MPDPORT")] = settings.value(QString("MPDPORT"), QString("6600")).toString(); + rawConfig[QString("MPRIS")] = settings.value(QString("MPRIS"), QString("auto")).toString(); + rawConfig[QString("PKGCMD")] = settings.value(QString("PKGCMD"), QString("pacman -Qu")).toString(); + rawConfig[QString("PKGNULL")] = settings.value(QString("PKGNULL"), QString("0")).toString(); + rawConfig[QString("PLAYER")] = settings.value(QString("PLAYER"), QString("mpris")).toString(); + settings.endGroup(); configuration = updateConfiguration(rawConfig); } diff --git a/sources/ext-sysmon/plasma-dataengine-extsysmon.conf b/sources/ext-sysmon/plasma-dataengine-extsysmon.conf index 6f84816..3be0d45 100644 --- a/sources/ext-sysmon/plasma-dataengine-extsysmon.conf +++ b/sources/ext-sysmon/plasma-dataengine-extsysmon.conf @@ -3,8 +3,11 @@ ACPIPATH=/sys/class/power_supply/ # May be 'nvidia' (for nvidia), 'ati' (for ATI RADEON), 'disable' or 'auto' GPUDEV=auto -# Set block device for hddtemp comma separated or use 'all' or 'disable' +# HDD temperature +## Set block device for hddtemp comma separated or use 'all' or 'disable' HDDDEV=all +# cmd +HDDTEMPCMD=sudo hddtemp # mpd server settings MPDADDRESS=localhost MPDPORT=6600 diff --git a/sources/ext-sysmon/plasma-engine-extsysmon.desktop b/sources/ext-sysmon/plasma-dataengine-extsysmon.desktop similarity index 100% rename from sources/ext-sysmon/plasma-engine-extsysmon.desktop rename to sources/ext-sysmon/plasma-dataengine-extsysmon.desktop