diff --git a/CHANGELOG b/CHANGELOG index 4696105..74e54c0 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,20 @@ +Ver.1.4.0 +--------- +* all + * change settings format from shell-like to ini (#24) +* dataengine + + create package for KF5 + * change NETCTLGUI_DEBUG=yes to DEBUG=yes + * update url +* gui: + + add workarounds to #22 and #23 +* plasmoid: + + create package and plugin for KF5 + * change NETCTLGUI_DEBUG=yes to DEBUG=yes + * update url + +*** + Ver.1.3.3 --------- * all @@ -7,7 +24,6 @@ Ver.1.3.3 *** - Ver.1.3.2 --------- * all diff --git a/arch/PKGBUILD b/arch/PKGBUILD index 425f441..8151317 100644 --- a/arch/PKGBUILD +++ b/arch/PKGBUILD @@ -2,22 +2,21 @@ pkgbase=netctl-gui pkgname=('libnetctlgui' 'netctlgui-helper' 'netctl-gui' - 'libnetctlgui-qt4' 'netctlgui-helper-qt4' 'netctl-gui-qt4' - 'kdeplasma-applets-netctl-gui') + 'plasma5-applet-netctl-gui') pkgver=1.4.0 -pkgrel=2 +pkgrel=1 pkgdesc="Qt4/Qt5 GUI for netctl. Also provides a widget for KDE" arch=('i686' 'x86_64') url="http://arcanis.name/projects/netctl-gui" license=('GPL3') -makedepends=('automoc4' 'cmake' 'kdelibs' 'qt5-base' 'qt5-tools') +makedepends=('automoc4' 'cmake' 'extra-cmake-modules' 'plasma-framework' 'qt5-tools') source=("https://github.com/arcan1s/netctl-gui/releases/download/V.${pkgver}/${pkgbase}-${pkgver}-src.tar.xz") -md5sums=('145998d43d4b0b346b704bc93345edfb') +md5sums=('087d7af57318a9f9f5592aad097feeb5') prepare() { - rm -rf "${srcdir}/build-"{plasmoid,qt4,qt5} - mkdir "${srcdir}/build-"{plasmoid,qt4,qt5} + rm -rf "${srcdir}/build-"{plasmoid,qt5} + mkdir "${srcdir}/build-"{plasmoid,qt5} } @@ -25,20 +24,10 @@ build() { cd "${srcdir}/build-plasmoid" cmake -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_BUILD_TYPE=Release \ + -DKDE_INSTALL_USE_QT_SYS_PATHS=ON \ -DBUILD_GUI:BOOL=0 \ -DBUILD_LIBRARY:BOOL=0 \ -DBUILD_HELPER:BOOL=0 \ - -DBUILD_KDE4:BOOL=1 \ - "../${pkgbase}" - make - - cd "${srcdir}/build-qt4" - cmake -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_BUILD_TYPE=Release \ - -DBUILD_DATAENGINE:BOOL=0 \ - -DBUILD_PLASMOID:BOOL=0 \ - -DUSE_CAPABILITIES:BOOL=0 \ - -DUSE_QT5:BOOL=0 \ "../${pkgbase}" make @@ -53,15 +42,13 @@ build() { } -package_kdeplasma-applets-netctl-gui() { - pkgdesc="A plasmoid, which interacts with netctl. A part of netctl-gui" - depends=('netctl' 'kdebase-workspace') +package_plasma5-applet-netctl-gui() { + pkgdesc="A KF5 plasmoid, which interacts with netctl. A part of netctl-gui" + depends=('netctl' 'plasma-framework') optdepends=('netctlgui-helper: DBus helper daemon' - 'netctlgui-helper-qt4: DBus helper daemon' 'netctl-gui: graphical front-end' - 'netctl-gui-qt4: graphical front-end' 'sudo: sudo support') - install="kdeplasma-applets-netctl-gui.install" + install="plasma-netctl-gui.install" cd "${srcdir}/build-plasmoid" make DESTDIR="${pkgdir}" install @@ -99,7 +86,7 @@ package_netctlgui-helper() { package_netctl-gui() { pkgdesc="Qt5 graphical front-end for netctl. A part of netctl-gui" depends=('libnetctlgui' 'xdg-utils') - optdepends=('kdeplasma-applets-netctl-gui: KDE widget' + optdepends=('plasma-netctl-gui: KF5 widget' 'netctlgui-helper: DBus helper daemon') provides=('netctl-gui-qt4') conflicts=('netctl-gui-qt4') @@ -110,48 +97,3 @@ package_netctl-gui() { cd "${srcdir}/build-qt5/resources" make DESTDIR="${pkgdir}" install } - - -package_libnetctlgui-qt4() { - pkgdesc="Qt4 library which interacts with netctl. A part of netctl-gui" - depends=('netctl' 'qt4') - optdepends=('netctlgui-helper-qt4: DBus helper daemon' - 'sudo: sudo support' - 'wpa_supplicant: wifi support') - provides=('libnetctlgui') - conflicts=('libnetctlgui') - install="" - - cd "${srcdir}/build-qt4/netctlgui" - make DESTDIR="${pkgdir}" install -} - - -package_netctlgui-helper-qt4() { - pkgdesc="Helper daemon for netctl-gui. A part of netctl-gui" - depends=('libnetctlgui-qt4') - provides=('netctlgui-helper') - conflicts=('netctlgui-helper') - backup=('etc/netctl-gui.conf' - 'etc/dbus-1/system.d/org.netctlgui.helper.conf') - install="netctlgui-helper.install" - - cd "${srcdir}/build-qt4/helper" - make DESTDIR="${pkgdir}" install -} - - -package_netctl-gui-qt4() { - pkgdesc="Qt4 graphical front-end for netctl. A part of netctl-gui" - depends=('libnetctlgui-qt4') - optdepends=('kdeplasma-applets-netctl-gui: KDE widget' - 'netctlgui-helper-qt4: DBus helper daemon') - provides=('netctl-gui') - conflicts=('netctl-gui') - install="netctl-gui.install" - - cd "${srcdir}/build-qt4/gui" - make DESTDIR="${pkgdir}" install - cd "${srcdir}/build-qt4/resources" - make DESTDIR="${pkgdir}" install -} diff --git a/arch/PKGBUILD-qt4 b/arch/PKGBUILD-qt4 new file mode 100644 index 0000000..6e79a06 --- /dev/null +++ b/arch/PKGBUILD-qt4 @@ -0,0 +1,101 @@ +# Maintainer: Evgeniy "arcanis" Alexeev + +pkgbase=netctl-gui-qt4 +pkgname=('libnetctlgui-qt4' 'netctlgui-helper-qt4' 'netctl-gui-qt4' + 'kdeplasma-applets-netctl-gui') +pkgver=1.4.0 +pkgrel=1 +pkgdesc="Qt4 GUI for netctl. Also provides a widget for KDE4" +arch=('i686' 'x86_64') +url="http://arcanis.name/projects/netctl-gui" +license=('GPL3') +makedepends=('automoc4' 'cmake' 'kdelibs') +source=("https://github.com/arcan1s/netctl-gui/releases/download/V.${pkgver}/${pkgbase}-${pkgver}-src.tar.xz") +md5sums=('087d7af57318a9f9f5592aad097feeb5') + + +prepare() { + rm -rf "${srcdir}/build-"{plasmoid,qt4} + mkdir "${srcdir}/build-"{plasmoid,qt4} +} + + +build() { + cd "${srcdir}/build-plasmoid" + cmake -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=Release \ + -DBUILD_GUI:BOOL=0 \ + -DBUILD_LIBRARY:BOOL=0 \ + -DBUILD_HELPER:BOOL=0 \ + -DBUILD_KDE4:BOOL=1 \ + "../${pkgbase}" + make + + cd "${srcdir}/build-qt4" + cmake -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=Release \ + -DBUILD_DATAENGINE:BOOL=0 \ + -DBUILD_PLASMOID:BOOL=0 \ + -DUSE_CAPABILITIES:BOOL=0 \ + -DUSE_QT5:BOOL=0 \ + "../${pkgbase}" + make +} + + +package_kdeplasma-applets-netctl-gui() { + pkgdesc="A KDE4 plasmoid, which interacts with netctl. A part of netctl-gui" + depends=('netctl' 'kdebase-workspace') + optdepends=('netctlgui-helper-qt4: DBus helper daemon' + 'netctl-gui-qt4: graphical front-end' + 'sudo: sudo support') + install="kdeplasma-applets-netctl-gui.install" + + cd "${srcdir}/build-plasmoid" + make DESTDIR="${pkgdir}" install +} + + +package_libnetctlgui-qt4() { + pkgdesc="Qt4 library which interacts with netctl. A part of netctl-gui" + depends=('netctl' 'qt4') + optdepends=('netctlgui-helper-qt4: DBus helper daemon' + 'sudo: sudo support' + 'wpa_supplicant: wifi support') + provides=('libnetctlgui') + conflicts=('libnetctlgui') + install="" + + cd "${srcdir}/build-qt4/netctlgui" + make DESTDIR="${pkgdir}" install +} + + +package_netctlgui-helper-qt4() { + pkgdesc="Helper daemon for netctl-gui. A part of netctl-gui" + depends=('libnetctlgui-qt4') + provides=('netctlgui-helper') + conflicts=('netctlgui-helper') + backup=('etc/netctl-gui.conf' + 'etc/dbus-1/system.d/org.netctlgui.helper.conf') + install="netctlgui-helper.install" + + cd "${srcdir}/build-qt4/helper" + make DESTDIR="${pkgdir}" install +} + + +package_netctl-gui-qt4() { + pkgdesc="Qt4 graphical front-end for netctl. A part of netctl-gui" + depends=('libnetctlgui-qt4') + optdepends=('kdeplasma-applets-netctl-gui: KDE widget' + 'netctlgui-helper-qt4: DBus helper daemon') + provides=('netctl-gui') + conflicts=('netctl-gui') + install="netctl-gui.install" + + cd "${srcdir}/build-qt4/gui" + make DESTDIR="${pkgdir}" install + cd "${srcdir}/build-qt4/resources" + make DESTDIR="${pkgdir}" install +} diff --git a/arch/plasma-netctl-gui.install b/arch/plasma-netctl-gui.install new file mode 100644 index 0000000..226f89e --- /dev/null +++ b/arch/plasma-netctl-gui.install @@ -0,0 +1,14 @@ +post_install() { + cat << EOF +Update plasmoids... +EOF + kbuildsycoca5 > /dev/null 2>&1 +} + +post_upgrade() { + post_install "$1" +} + +post_remove() { + post_install "$1" +} diff --git a/create_archive.sh b/create_archive.sh index f9aa04e..a693f57 100755 --- a/create_archive.sh +++ b/create_archive.sh @@ -20,8 +20,8 @@ ln -sf "../${ARCHIVE}-${VERSION}-src.tar.xz" arch rm -rf "${ARCHIVE}" # update md5sum MD5SUMS=$(md5sum ${ARCHIVE}-${VERSION}-src.tar.xz | awk '{print $1}') -sed -i "/md5sums=('[0-9A-Fa-f]*/s/[^'][^)]*/md5sums=('${MD5SUMS}'/" arch/PKGBUILD -sed -i "s/pkgver=[0-9.]*/pkgver=${VERSION}/" arch/PKGBUILD +sed -i "/md5sums=('[0-9A-Fa-f]*/s/[^'][^)]*/md5sums=('${MD5SUMS}'/" arch/PKGBUILD{,-qt4} +sed -i "s/pkgver=[0-9.]*/pkgver=${VERSION}/" arch/PKGBUILD{,-qt4} # clear find . -type f -name '*src.tar.xz' -not -name "*${VERSION}-src.tar.xz" -exec rm -rf {} \; find arch -type l -xtype l -exec rm -rf {} \; diff --git a/sources/dataengine/CMakeLists.txt b/sources/dataengine/CMakeLists.txt index b12a9d6..12553f9 100644 --- a/sources/dataengine/CMakeLists.txt +++ b/sources/dataengine/CMakeLists.txt @@ -18,8 +18,8 @@ else () include (KDEInstallDirs) include (KDECMakeSettings) include (KDECompilerSettings) - add_definitions (${Qt5Core_DEFINITIONS} ${Qt5Network_DEFINITIONS}) + add_definitions (${Qt5Core_DEFINITIONS} ${Qt5Network_DEFINITIONS}) set (Qt_INCLUDE ${Qt5Core_INCLUDE_DIRS} ${Qt5Network_INCLUDE_DIRS}) set (KDE_INCLUDE ${ConfigCore_INCLUDE_DIR} diff --git a/sources/dataengine/netctl.cpp b/sources/dataengine/netctl.cpp index 1bb1efd..f8e0769 100644 --- a/sources/dataengine/netctl.cpp +++ b/sources/dataengine/netctl.cpp @@ -46,7 +46,7 @@ Netctl::Netctl(QObject *parent, const QVariantList &args) // debug QProcessEnvironment environment = QProcessEnvironment::systemEnvironment(); - QString debugEnv = environment.value(QString("NETCTLGUI_DEBUG"), QString("no")); + QString debugEnv = environment.value(QString("DEBUG"), QString("no")); if (debugEnv == QString("yes")) debug = true; else @@ -90,9 +90,9 @@ void Netctl::readConfiguration() QString fileName; #ifdef BUILD_KDE4 - fileName = KGlobal::dirs()->findResource("config", "netctl.conf"); + fileName = KGlobal::dirs()->findResource("config", "plasma-dataengine-netctl.conf"); #else - fileName = QStandardPaths::locate(QStandardPaths::ConfigLocation, QString("netctl.conf")); + fileName = QStandardPaths::locate(QStandardPaths::ConfigLocation, QString("plasma-dataengine-netctl.conf")); #endif /* BUILD_KDE4 */ if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << fileName; QSettings settings(fileName, QSettings::IniFormat); diff --git a/sources/dataengine/netctl.conf b/sources/dataengine/plasma-dataengine-netctl.conf similarity index 100% rename from sources/dataengine/netctl.conf rename to sources/dataengine/plasma-dataengine-netctl.conf diff --git a/sources/gui/docs/CMakeLists.txt b/sources/gui/docs/CMakeLists.txt index d9ec0f8..5bf1e83 100644 --- a/sources/gui/docs/CMakeLists.txt +++ b/sources/gui/docs/CMakeLists.txt @@ -1,12 +1,12 @@ # build pages file (GLOB SUBPROJECT_DOCS_IN *.html) file (GLOB SUBPROJECT_IMGS *.png) -foreach (DOC_IN ${SUBPROJECT_DOCS_IN}) - file (RELATIVE_PATH ONE_DOC ${CMAKE_SOURCE_DIR} ${DOC_IN}) - configure_file (${DOC_IN} ${CMAKE_CURRENT_BINARY_DIR}/${ONE_DOC}) - set (SUBPROJECT_DOCS ${SUBPROJECT_DOCS} ${CMAKE_CURRENT_BINARY_DIR}/${ONE_DOC}) -endforeach () +foreach (DOC_IN ${SUBPROJECT_DOCS_IN}) + file (RELATIVE_PATH ONE_DOC ${CMAKE_SOURCE_DIR} ${DOC_IN}) + configure_file (${DOC_IN} ${CMAKE_CURRENT_BINARY_DIR}/${ONE_DOC}) + set (SUBPROJECT_DOCS ${SUBPROJECT_DOCS} ${CMAKE_CURRENT_BINARY_DIR}/${ONE_DOC}) +endforeach () install (FILES ${SUBPROJECT_DOCS} DESTINATION share/doc/${PROJECT_NAME}) install (FILES ${SUBPROJECT_IMGS} DESTINATION share/doc/${PROJECT_NAME}) diff --git a/sources/gui/src/CMakeLists.txt b/sources/gui/src/CMakeLists.txt index bc3e913..93b21fd 100644 --- a/sources/gui/src/CMakeLists.txt +++ b/sources/gui/src/CMakeLists.txt @@ -18,40 +18,40 @@ include_directories (${CMAKE_CURRENT_SOURCE_DIR}/../../${PROJECT_LIBRARY}/includ link_directories (${PROJECT_LIBRARY}/src/lib) if (USE_QT5) - find_package(Qt5 COMPONENTS Core DBus Widgets LinguistTools REQUIRED) - add_definitions(${Qt5Core_DEFINITIONS} ${Qt5DBus_DEFINITIONS} ${Qt5Widgets_DEFINITIONS} ${Qt5LinguistTools_DEFINITIONS}) - include_directories (${Qt5Core_INCLUDE_DIRS} ${Qt5DBus_INCLUDE_DIRS} ${Qt5Widgets_INCLUDE_DIRS}) - set (QT_NEEDED_LIBS ${Qt5Core_LIBRARIES} ${Qt5DBus_LIBRARIES} ${Qt5Widgets_LIBRARIES}) - qt5_wrap_cpp (MOC_SOURCES ${HEADERS}) - qt5_wrap_ui (UI_HEADERS ${FORMS}) - qt5_add_resources (QRC_SOURCES ${RESOURCES}) + find_package (Qt5 COMPONENTS Core DBus Widgets LinguistTools REQUIRED) + add_definitions (${Qt5Core_DEFINITIONS} ${Qt5DBus_DEFINITIONS} ${Qt5Widgets_DEFINITIONS} ${Qt5LinguistTools_DEFINITIONS}) + include_directories (${Qt5Core_INCLUDE_DIRS} ${Qt5DBus_INCLUDE_DIRS} ${Qt5Widgets_INCLUDE_DIRS}) + set (QT_NEEDED_LIBS ${Qt5Core_LIBRARIES} ${Qt5DBus_LIBRARIES} ${Qt5Widgets_LIBRARIES}) + qt5_wrap_cpp (MOC_SOURCES ${HEADERS}) + qt5_wrap_ui (UI_HEADERS ${FORMS}) + qt5_add_resources (QRC_SOURCES ${RESOURCES}) - foreach (LANGUAGE ${LANGUAGES}) - set (TS ${LANGUAGE}) - string (REPLACE ".ts" ".qm" QM ${TS}) - set (TRANSLATIONS ${TRANSLATIONS} ${TS}) - set (TRANSLATIONS_BINARY ${TRANSLATIONS_BINARY} ${QM}) - add_custom_command (OUTPUT ${QM} COMMAND ${Qt5_LRELEASE_EXECUTABLE} ${TS} MAIN_DEPENDENCY ${TS}) - endforeach () - add_custom_target (translations COMMAND ${Qt5_LUPDATE_EXECUTABLE} ${HEADERS} ${SOURCES} ${UI_HEADERS} -ts ${TRANSLATIONS}) - add_custom_command (TARGET translations COMMAND ${Qt5_LRELEASE_EXECUTABLE} ${TRANSLATIONS}) + foreach (LANGUAGE ${LANGUAGES}) + set (TS ${LANGUAGE}) + string (REPLACE ".ts" ".qm" QM ${TS}) + set (TRANSLATIONS ${TRANSLATIONS} ${TS}) + set (TRANSLATIONS_BINARY ${TRANSLATIONS_BINARY} ${QM}) + add_custom_command (OUTPUT ${QM} COMMAND ${Qt5_LRELEASE_EXECUTABLE} ${TS} MAIN_DEPENDENCY ${TS}) + endforeach () + add_custom_target (translations COMMAND ${Qt5_LUPDATE_EXECUTABLE} ${HEADERS} ${SOURCES} ${UI_HEADERS} -ts ${TRANSLATIONS}) + add_custom_command (TARGET translations COMMAND ${Qt5_LRELEASE_EXECUTABLE} ${TRANSLATIONS}) else () - find_package (Qt4 COMPONENTS QtCore QtDBus QtGui REQUIRED) - include (${QT_USE_FILE}) - set (QT_NEEDED_LIBS ${QT_QTCORE_LIBRARY} ${QT_QTDBUS_LIBRARY} ${QT_QTGUI_LIBRARY}) - qt4_wrap_cpp (MOC_SOURCES ${HEADERS}) - qt4_wrap_ui (UI_HEADERS ${FORMS}) - qt4_add_resources (QRC_SOURCES ${RESOURCES}) + find_package (Qt4 COMPONENTS QtCore QtDBus QtGui REQUIRED) + include (${QT_USE_FILE}) + set (QT_NEEDED_LIBS ${QT_QTCORE_LIBRARY} ${QT_QTDBUS_LIBRARY} ${QT_QTGUI_LIBRARY}) + qt4_wrap_cpp (MOC_SOURCES ${HEADERS}) + qt4_wrap_ui (UI_HEADERS ${FORMS}) + qt4_add_resources (QRC_SOURCES ${RESOURCES}) - foreach (LANGUAGE ${LANGUAGES}) - set (TS ${LANGUAGE}) - string (REPLACE ".ts" ".qm" QM ${TS}) - set (TRANSLATIONS ${TRANSLATIONS} ${TS}) - set (TRANSLATIONS_BINARY ${TRANSLATIONS_BINARY} ${QM}) - add_custom_command (OUTPUT ${QM} COMMAND ${QT_LRELEASE_EXECUTABLE} ${TS} MAIN_DEPENDENCY ${TS}) - endforeach () - add_custom_target (translations COMMAND ${QT_LUPDATE_EXECUTABLE} ${HEADERS} ${SOURCES} ${UI_HEADERS} -ts ${TRANSLATIONS}) - add_custom_command (TARGET translations COMMAND ${QT_LRELEASE_EXECUTABLE} ${TRANSLATIONS}) + foreach (LANGUAGE ${LANGUAGES}) + set (TS ${LANGUAGE}) + string (REPLACE ".ts" ".qm" QM ${TS}) + set (TRANSLATIONS ${TRANSLATIONS} ${TS}) + set (TRANSLATIONS_BINARY ${TRANSLATIONS_BINARY} ${QM}) + add_custom_command (OUTPUT ${QM} COMMAND ${QT_LRELEASE_EXECUTABLE} ${TS} MAIN_DEPENDENCY ${TS}) + endforeach () + add_custom_target (translations COMMAND ${QT_LUPDATE_EXECUTABLE} ${HEADERS} ${SOURCES} ${UI_HEADERS} -ts ${TRANSLATIONS}) + add_custom_command (TARGET translations COMMAND ${QT_LRELEASE_EXECUTABLE} ${TRANSLATIONS}) endif() add_executable (${SUBPROJECT} ${UI_HEADERS} ${HEADERS} ${SOURCES} ${MOC_SOURCES} ${QRC_SOURCES} ${TRANSLATIONS}) diff --git a/sources/gui/src/messages.cpp b/sources/gui/src/messages.cpp index 73634bf..b7d70f0 100644 --- a/sources/gui/src/messages.cpp +++ b/sources/gui/src/messages.cpp @@ -25,9 +25,7 @@ QString errorMessage() { - QString errorMessage = QApplication::translate("MainWindow", "Unknown flag\n"); - - return errorMessage; + return QApplication::translate("MainWindow", "Unknown flag\n"); } @@ -141,6 +139,7 @@ QString infoMessage() infoMessage += QString("\t-DDBUS_SYSTEMCONF_PATH=%1\n").arg(QString(PROJECT_DBUS_SYSTEMCONF_PATH)); infoMessage += QString("\t-DSYSTEMD_SERVICE_PATH=%1\n").arg(QString(PROJECT_SYSTEMD_SERVICE_PATH)); infoMessage += QString("\t-DUSE_CAPABILITIES=%1\n").arg(QString(PROJECT_USE_CAPABILITIES)); + infoMessage += QString("\t-DUSE_KDE4=%1\n").arg(QString(PROJECT_USE_KDE4)); infoMessage += QString("\t-DUSE_QT5=%1\n").arg(QString(PROJECT_USE_QT5)); // transport information infoMessage += QString("%1:\n").arg(QApplication::translate("MainWindow", "DBus configuration")); diff --git a/sources/gui/src/settingswindow.cpp b/sources/gui/src/settingswindow.cpp index 49dc5cc..b114c0d 100644 --- a/sources/gui/src/settingswindow.cpp +++ b/sources/gui/src/settingswindow.cpp @@ -404,9 +404,10 @@ QMap SettingsWindow::getDefault() } -QMap SettingsWindow::getSettings(const QString fileName) +QMap SettingsWindow::getSettings(QString fileName) { if (debug) qDebug() << PDEBUG; + if (fileName == QString("")) fileName = file; QMap config; QSettings settings(fileName, QSettings::IniFormat); @@ -458,7 +459,7 @@ QMap SettingsWindow::getSettings(const QString fileName) if (debug) qDebug() << PDEBUG << ":" << config.keys()[i] + QString("=") + config[config.keys()[i]]; - return configuration; + return config; } diff --git a/sources/gui/src/settingswindow.h b/sources/gui/src/settingswindow.h index a1b7ce7..015a098 100644 --- a/sources/gui/src/settingswindow.h +++ b/sources/gui/src/settingswindow.h @@ -39,7 +39,7 @@ public: const QString configFile = QString("")); ~SettingsWindow(); QMap getDefault(); - QMap getSettings(const QString fileName = file); + QMap getSettings(QString fileName = QString("")); public slots: void closeWindow(); diff --git a/sources/helper/src/CMakeLists.txt b/sources/helper/src/CMakeLists.txt index 263cd4a..53fda84 100644 --- a/sources/helper/src/CMakeLists.txt +++ b/sources/helper/src/CMakeLists.txt @@ -17,38 +17,38 @@ include_directories (${CMAKE_CURRENT_SOURCE_DIR}/../../${PROJECT_LIBRARY}/includ link_directories (${PROJECT_LIBRARY}/src/lib) if (USE_QT5) - find_package(Qt5 COMPONENTS Core DBus LinguistTools REQUIRED) - add_definitions(${Qt5Core_DEFINITIONS} ${Qt5DBus_DEFINITIONS} ${Qt5LinguistTools_DEFINITIONS}) - include_directories (${Qt5Core_INCLUDE_DIRS} ${Qt5DBus_INCLUDE_DIRS}) - set (QT_NEEDED_LIBS ${Qt5Core_LIBRARIES} ${Qt5DBus_LIBRARIES}) - qt5_wrap_cpp (MOC_SOURCES ${HEADERS}) - qt5_add_resources (QRC_SOURCES ${RESOURCES}) + find_package (Qt5 COMPONENTS Core DBus LinguistTools REQUIRED) + add_definitions (${Qt5Core_DEFINITIONS} ${Qt5DBus_DEFINITIONS} ${Qt5LinguistTools_DEFINITIONS}) + include_directories (${Qt5Core_INCLUDE_DIRS} ${Qt5DBus_INCLUDE_DIRS}) + set (QT_NEEDED_LIBS ${Qt5Core_LIBRARIES} ${Qt5DBus_LIBRARIES}) + qt5_wrap_cpp (MOC_SOURCES ${HEADERS}) + qt5_add_resources (QRC_SOURCES ${RESOURCES}) - foreach (LANGUAGE ${LANGUAGES}) - set (TS ${LANGUAGE}) - string (REPLACE ".ts" ".qm" QM ${TS}) - set (TRANSLATIONS ${TRANSLATIONS} ${TS}) - set (TRANSLATIONS_BINARY ${TRANSLATIONS_BINARY} ${QM}) - add_custom_command (OUTPUT ${QM} COMMAND ${Qt5_LRELEASE_EXECUTABLE} ${TS} MAIN_DEPENDENCY ${TS}) - endforeach () - add_custom_target (translations-helper COMMAND ${Qt5_LUPDATE_EXECUTABLE} ${HEADERS} ${SOURCES} -ts ${TRANSLATIONS}) - add_custom_command (TARGET translations-helper COMMAND ${Qt5_LRELEASE_EXECUTABLE} ${TRANSLATIONS}) + foreach (LANGUAGE ${LANGUAGES}) + set (TS ${LANGUAGE}) + string (REPLACE ".ts" ".qm" QM ${TS}) + set (TRANSLATIONS ${TRANSLATIONS} ${TS}) + set (TRANSLATIONS_BINARY ${TRANSLATIONS_BINARY} ${QM}) + add_custom_command (OUTPUT ${QM} COMMAND ${Qt5_LRELEASE_EXECUTABLE} ${TS} MAIN_DEPENDENCY ${TS}) + endforeach () + add_custom_target (translations-helper COMMAND ${Qt5_LUPDATE_EXECUTABLE} ${HEADERS} ${SOURCES} -ts ${TRANSLATIONS}) + add_custom_command (TARGET translations-helper COMMAND ${Qt5_LRELEASE_EXECUTABLE} ${TRANSLATIONS}) else () - find_package (Qt4 COMPONENTS QtCore QtDBus REQUIRED) - include (${QT_USE_FILE}) - set (QT_NEEDED_LIBS ${QT_QTCORE_LIBRARY} ${QT_QTDBUS_LIBRARY}) - qt4_wrap_cpp (MOC_SOURCES ${HEADERS}) - qt4_add_resources (QRC_SOURCES ${RESOURCES}) + find_package (Qt4 COMPONENTS QtCore QtDBus REQUIRED) + include (${QT_USE_FILE}) + set (QT_NEEDED_LIBS ${QT_QTCORE_LIBRARY} ${QT_QTDBUS_LIBRARY}) + qt4_wrap_cpp (MOC_SOURCES ${HEADERS}) + qt4_add_resources (QRC_SOURCES ${RESOURCES}) - foreach (LANGUAGE ${LANGUAGES}) - set (TS ${LANGUAGE}) - string (REPLACE ".ts" ".qm" QM ${TS}) - set (TRANSLATIONS ${TRANSLATIONS} ${TS}) - set (TRANSLATIONS_BINARY ${TRANSLATIONS_BINARY} ${QM}) - add_custom_command (OUTPUT ${QM} COMMAND ${QT_LRELEASE_EXECUTABLE} ${TS} MAIN_DEPENDENCY ${TS}) - endforeach () - add_custom_target (translations-helper COMMAND ${QT_LUPDATE_EXECUTABLE} ${HEADERS} ${SOURCES} -ts ${TRANSLATIONS}) - add_custom_command (TARGET translations-helper COMMAND ${QT_LRELEASE_EXECUTABLE} ${TRANSLATIONS}) + foreach (LANGUAGE ${LANGUAGES}) + set (TS ${LANGUAGE}) + string (REPLACE ".ts" ".qm" QM ${TS}) + set (TRANSLATIONS ${TRANSLATIONS} ${TS}) + set (TRANSLATIONS_BINARY ${TRANSLATIONS_BINARY} ${QM}) + add_custom_command (OUTPUT ${QM} COMMAND ${QT_LRELEASE_EXECUTABLE} ${TS} MAIN_DEPENDENCY ${TS}) + endforeach () + add_custom_target (translations-helper COMMAND ${QT_LUPDATE_EXECUTABLE} ${HEADERS} ${SOURCES} -ts ${TRANSLATIONS}) + add_custom_command (TARGET translations-helper COMMAND ${QT_LRELEASE_EXECUTABLE} ${TRANSLATIONS}) endif() add_executable (${SUBPROJECT} ${SOURCES} ${HEADERS} ${MOC_SOURCES} ${QRC_SOURCES} ${TRANSLATIONS}) @@ -56,5 +56,5 @@ target_link_libraries (${SUBPROJECT} ${PROJECT_LIBRARY} ${QT_NEEDED_LIBS}) # install properties install (TARGETS ${SUBPROJECT} DESTINATION bin) if (USE_CAPABILITIES) - install (CODE "exec_program (setcap ARGS \"cap_setuid=ep\" \"$ENV{DESTDIR}/bin/${SUBPROJECT}\")") + install (CODE "exec_program (setcap ARGS \"cap_setuid=ep\" \"$ENV{DESTDIR}/bin/${SUBPROJECT}\")") endif () diff --git a/sources/helper/src/messages.cpp b/sources/helper/src/messages.cpp index e56aaf8..6440bcc 100644 --- a/sources/helper/src/messages.cpp +++ b/sources/helper/src/messages.cpp @@ -25,9 +25,7 @@ QString errorMessage() { - QString errorMessage = QCoreApplication::translate("NetctlHelper", "Unknown flag\n"); - - return errorMessage; + return QCoreApplication::translate("NetctlHelper", "Unknown flag\n"); } @@ -110,6 +108,7 @@ QString infoMessage() infoMessage += QString("\t-DDBUS_SYSTEMCONF_PATH=%1\n").arg(QString(PROJECT_DBUS_SYSTEMCONF_PATH)); infoMessage += QString("\t-DSYSTEMD_SERVICE_PATH=%1\n").arg(QString(PROJECT_SYSTEMD_SERVICE_PATH)); infoMessage += QString("\t-DUSE_CAPABILITIES=%1\n").arg(QString(PROJECT_USE_CAPABILITIES)); + infoMessage += QString("\t-DUSE_KDE4=%1\n").arg(QString(PROJECT_USE_KDE4)); infoMessage += QString("\t-DUSE_QT5=%1\n").arg(QString(PROJECT_USE_QT5)); // transport information infoMessage += QString("%1:\n").arg(QCoreApplication::translate("NetctlHelper", "DBus configuration")); diff --git a/sources/helper/src/netctlhelper.cpp b/sources/helper/src/netctlhelper.cpp index fe75de0..1b462dd 100644 --- a/sources/helper/src/netctlhelper.cpp +++ b/sources/helper/src/netctlhelper.cpp @@ -181,7 +181,7 @@ QMap NetctlHelper::getSettings(const QString file) if (debug) qDebug() << PDEBUG << ":" << config.keys()[i] + QString("=") + config[config.keys()[i]]; - return configuration; + return config; } diff --git a/sources/netctlgui/CMakeLists.txt b/sources/netctlgui/CMakeLists.txt index b992542..5b097a8 100644 --- a/sources/netctlgui/CMakeLists.txt +++ b/sources/netctlgui/CMakeLists.txt @@ -15,5 +15,5 @@ add_subdirectory (${SUBPROJECT_SOURCE_DIR}) install (DIRECTORY ${SUBPROJECT_INCLUDE_DIR}/ DESTINATION include/) # documentation if (BUILD_DOCS) - include (docs.cmake) + include (docs.cmake) endif () diff --git a/sources/netctlgui/docs.cmake b/sources/netctlgui/docs.cmake index b687c6d..181944b 100644 --- a/sources/netctlgui/docs.cmake +++ b/sources/netctlgui/docs.cmake @@ -1,9 +1,5 @@ # doxygen documentation find_package (Doxygen) -if (NOT DOXYGEN_FOUND) - message (STATUS "WARNING: Doxygen not found - Reference manual will not be created") - return () -endif () configure_file (doxygen.conf.in ${CMAKE_CURRENT_BINARY_DIR}/doxygen.conf) add_custom_target (oxygen-docs ALL COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.conf) diff --git a/sources/netctlgui/src/CMakeLists.txt b/sources/netctlgui/src/CMakeLists.txt index 843a536..d9ead4f 100644 --- a/sources/netctlgui/src/CMakeLists.txt +++ b/sources/netctlgui/src/CMakeLists.txt @@ -12,16 +12,16 @@ include_directories (${SUBPROJECT_INCLUDE_DIR} ${PROJECT_TRDPARTY_DIR}) if (USE_QT5) - find_package(Qt5 COMPONENTS Core REQUIRED) - add_definitions(${Qt5Core_DEFINITIONS}) - include_directories (${Qt5Core_INCLUDE_DIRS}) - set (QT_NEEDED_LIBS ${Qt5Core_LIBRARIES}) - qt5_wrap_cpp (MOC_SOURCES ${HEADERS}) + find_package (Qt5 COMPONENTS Core REQUIRED) + add_definitions (${Qt5Core_DEFINITIONS}) + include_directories (${Qt5Core_INCLUDE_DIRS}) + set (QT_NEEDED_LIBS ${Qt5Core_LIBRARIES}) + qt5_wrap_cpp (MOC_SOURCES ${HEADERS}) else () - find_package (Qt4 COMPONENTS QtCore REQUIRED) - include (${QT_USE_FILE}) - set (QT_NEEDED_LIBS ${QT_QTCORE_LIBRARY}) - qt4_wrap_cpp (MOC_SOURCES ${HEADERS}) + find_package (Qt4 COMPONENTS QtCore REQUIRED) + include (${QT_USE_FILE}) + set (QT_NEEDED_LIBS ${QT_QTCORE_LIBRARY}) + qt4_wrap_cpp (MOC_SOURCES ${HEADERS}) endif() add_library (${SUBPROJECT} SHARED ${SOURCES} ${HEADERS} ${MOC_SOURCES}) diff --git a/sources/plasmoid-kde4/netctl.cpp b/sources/plasmoid-kde4/netctl.cpp index ccd340f..76cb401 100644 --- a/sources/plasmoid-kde4/netctl.cpp +++ b/sources/plasmoid-kde4/netctl.cpp @@ -67,7 +67,7 @@ Netctl::Netctl(QObject *parent, const QVariantList &args) { // debug QProcessEnvironment environment = QProcessEnvironment::systemEnvironment(); - QString debugEnv = environment.value(QString("NETCTLGUI_DEBUG"), QString("no")); + QString debugEnv = environment.value(QString("DEBUG"), QString("no")); if (debugEnv == QString("yes")) debug = true; else @@ -153,13 +153,15 @@ QMap Netctl::readDataEngineConfiguration() QMap configuration; QString fileName; - fileName = KGlobal::dirs()->findResource("config", "netctl.conf"); + fileName = KGlobal::dirs()->findResource("config", "plasma-dataengine-netctl.conf"); if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << fileName; QSettings settings(fileName, QSettings::IniFormat); + settings.beginGroup(QString("Netctl commands")); configuration[QString("NETCTLCMD")] = settings.value(QString("NETCTLCMD"), QString("/usr/bin/netctl")).toString(); configuration[QString("NETCTLAUTOCMD")] = settings.value(QString("NETCTLAUTOCMD"), QString("/usr/bin/netctl-auto")).toString(); settings.endGroup(); + settings.beginGroup(QString("External IP")); configuration[QString("EXTIP4")] = settings.value(QString("EXTIP4"), QString("false")).toString(); configuration[QString("EXTIP4CMD")] = settings.value(QString("EXTIP4CMD"), QString("curl ip4.telize.com")).toString(); @@ -175,7 +177,7 @@ void Netctl::writeDataEngineConfiguration(const QMap configura { if (debug) qDebug() << PDEBUG; - QString fileName = KGlobal::dirs()->locateLocal("config", "netctl.conf"); + QString fileName = KGlobal::dirs()->locateLocal("config", "plasma-dataengine-netctl.conf"); QSettings settings(fileName, QSettings::IniFormat); if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << settings.fileName(); diff --git a/sources/plasmoid-kf5/CMakeLists.txt b/sources/plasmoid-kf5/CMakeLists.txt index 99ac8de..085d0a9 100644 --- a/sources/plasmoid-kf5/CMakeLists.txt +++ b/sources/plasmoid-kf5/CMakeLists.txt @@ -2,28 +2,15 @@ set (SUBPROJECT plasma_applet_netctl) message (STATUS "Subproject ${SUBPROJECT}") -find_package (Qt5 REQUIRED COMPONENTS Core DBus Qml Widgets) find_package (ECM 0.0.12 REQUIRED NO_MODULE) set (CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR}) -find_package(KF5 REQUIRED COMPONENTS I18n Service WidgetsAddons KIO CoreAddons Notifications Plasma) -find_package(KF5I18n CONFIG REQUIRED) + +find_package (Qt5 REQUIRED COMPONENTS Core DBus Qml Quick) +find_package (KF5 REQUIRED COMPONENTS I18n Notifications Plasma) include (KDEInstallDirs) include (KDECMakeSettings) include (KDECompilerSettings) -add_definitions (${Qt5Core_DEFINITIONS} ${Qt5DBus_DEFINITIONS} ${Qt5Qml_DEFINITIONS}) -set (Qt_INCLUDE ${Qt5Core_INCLUDE_DIRS} - ${Qt5DBus_INCLUDE_DIRS} - ${Qt5Qml_INCLUDE_DIRS}) -set (Kf5_INCLUDE ${ConfigCore_INCLUDE_DIR} - ${CoreAddons_INCLUDE_DIR} - ${I18n_INCLUDE_DIR} - ${INTERFACE_INCLUDE_DIRECTORIES} - ${Notifications_INCLUDE_DIR} - ${Plasma_INCLUDE_DIR} - ${Service_INCLUDE_DIR}) - -set (PLUGIN_NAME netctlplugin) add_subdirectory (plugin) -plasma_install_package (plasmoid org.kde.plasma.netctl) +plasma_install_package (package org.kde.plasma.netctl) diff --git a/sources/plasmoid-kf5/plasmoid/contents/config/config.qml b/sources/plasmoid-kf5/package/contents/config/config.qml similarity index 100% rename from sources/plasmoid-kf5/plasmoid/contents/config/config.qml rename to sources/plasmoid-kf5/package/contents/config/config.qml diff --git a/sources/plasmoid-kf5/plasmoid/contents/config/main.xml b/sources/plasmoid-kf5/package/contents/config/main.xml similarity index 100% rename from sources/plasmoid-kf5/plasmoid/contents/config/main.xml rename to sources/plasmoid-kf5/package/contents/config/main.xml diff --git a/sources/plasmoid-kf5/plasmoid/contents/ui/about.qml b/sources/plasmoid-kf5/package/contents/ui/about.qml similarity index 100% rename from sources/plasmoid-kf5/plasmoid/contents/ui/about.qml rename to sources/plasmoid-kf5/package/contents/ui/about.qml diff --git a/sources/plasmoid-kf5/plasmoid/contents/ui/appearance.qml b/sources/plasmoid-kf5/package/contents/ui/appearance.qml similarity index 100% rename from sources/plasmoid-kf5/plasmoid/contents/ui/appearance.qml rename to sources/plasmoid-kf5/package/contents/ui/appearance.qml diff --git a/sources/plasmoid-kf5/plasmoid/contents/ui/dataengine.qml b/sources/plasmoid-kf5/package/contents/ui/dataengine.qml similarity index 100% rename from sources/plasmoid-kf5/plasmoid/contents/ui/dataengine.qml rename to sources/plasmoid-kf5/package/contents/ui/dataengine.qml diff --git a/sources/plasmoid-kf5/plasmoid/contents/ui/main.qml b/sources/plasmoid-kf5/package/contents/ui/main.qml similarity index 99% rename from sources/plasmoid-kf5/plasmoid/contents/ui/main.qml rename to sources/plasmoid-kf5/package/contents/ui/main.qml index 0c31239..98c8257 100644 --- a/sources/plasmoid-kf5/plasmoid/contents/ui/main.qml +++ b/sources/plasmoid-kf5/package/contents/ui/main.qml @@ -133,8 +133,7 @@ Item { plasmoid.setAction("switchToProfile", i18n("Switch to profile")) plasmoid.setAction("restartProfile", i18n("Restart profile"), "stock-refresh") plasmoid.setAction("enableProfile", i18n("Enable profile")) - // FIXME: icon from resources - plasmoid.setAction("startWifi", i18n("Show WiFi menu")) + plasmoid.setAction("startWifi", i18n("Show WiFi menu"), "image://netctl/wifi.png") // helper if (plasmoid.configuration.useHelper) { NetctlAdds.runCmd(plasmoid.configuration.helperPath) diff --git a/sources/plasmoid-kf5/plasmoid/contents/ui/widget.qml b/sources/plasmoid-kf5/package/contents/ui/widget.qml similarity index 100% rename from sources/plasmoid-kf5/plasmoid/contents/ui/widget.qml rename to sources/plasmoid-kf5/package/contents/ui/widget.qml diff --git a/sources/plasmoid-kf5/plasmoid/metadata.desktop b/sources/plasmoid-kf5/package/metadata.desktop similarity index 100% rename from sources/plasmoid-kf5/plasmoid/metadata.desktop rename to sources/plasmoid-kf5/package/metadata.desktop diff --git a/sources/plasmoid-kf5/plugin/CMakeLists.txt b/sources/plasmoid-kf5/plugin/CMakeLists.txt index b2b37fa..162994d 100644 --- a/sources/plasmoid-kf5/plugin/CMakeLists.txt +++ b/sources/plasmoid-kf5/plugin/CMakeLists.txt @@ -1,3 +1,19 @@ +set (PLUGIN_NAME netctlplugin) + +add_definitions (${Qt5Core_DEFINITIONS} ${Qt5DBus_DEFINITIONS} ${Qt5Qml_DEFINITIONS}) +set (Qt_INCLUDE ${Qt5Core_INCLUDE_DIRS} + ${Qt5DBus_INCLUDE_DIRS} + ${Qt5Qml_INCLUDE_DIRS} + ${Qt5Quick_INCLUDE_DIRS}) +set (Qt_LIBRARIES ${Qt5Core_LIBRARIES} + ${Qt5DBus_LIBRARIES} + ${Qt5Qml_LIBRARIES} + ${Qt5Quick_LIBRARIES}) +set (Kf5_INCLUDE ${I18n_INCLUDE_DIR} + ${Notifications_INCLUDE_DIR}) +set (Kf5_LIBRARIES KF5::I18n + KF5::Notifications) + include_directories (${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR} @@ -8,10 +24,11 @@ include_directories (${CMAKE_SOURCE_DIR} file (GLOB SUBPROJECT_SOURCE *.cpp) file (GLOB SUBPROJECT_NOTIFY *.notifyrc) +set (RESOURCES ${PROJECT_RESOURCE_DIR}/resources-plasmoid.qrc) -add_library (${PLUGIN_NAME} SHARED ${SUBPROJECT_SOURCE}) -target_link_libraries (${PLUGIN_NAME} ${Qt5Core_LIBRARIES} ${Qt5DBus_LIBRARIES} ${Qt5Qml_LIBRARIES} ${I18n_LIBRARIES} ${Plasma_LIBRARIES} - KF5::I18n KF5::Notifications) +qt5_add_resources (QRC_SOURCES ${RESOURCES}) +add_library (${PLUGIN_NAME} SHARED ${SUBPROJECT_SOURCE} ${QRC_SOURCES}) +target_link_libraries (${PLUGIN_NAME} ${Qt_LIBRARIES} ${Kf5_LIBRARIES}) install (TARGETS ${PLUGIN_NAME} DESTINATION ${QML_INSTALL_DIR}/org/kde/plasma/private/netctl) install (FILES qmldir DESTINATION ${QML_INSTALL_DIR}/org/kde/plasma/private/netctl) diff --git a/sources/plasmoid-kf5/plugin/netctl.cpp b/sources/plasmoid-kf5/plugin/netctl.cpp index 4e17fb0..5e0963d 100644 --- a/sources/plasmoid-kf5/plugin/netctl.cpp +++ b/sources/plasmoid-kf5/plugin/netctl.cpp @@ -23,13 +23,21 @@ static QObject *netctl_singletontype_provider(QQmlEngine *engine, QJSEngine *scriptEngine) { - Q_UNUSED(engine) - Q_UNUSED(scriptEngine) + Q_UNUSED(engine); + Q_UNUSED(scriptEngine); return new NetctlAdds(); } +void NetctlPlugin::initializeEngine(QQmlEngine *engine, const char *uri) +{ + Q_UNUSED(uri); + + engine->addImageProvider("netctl", new NetctlAddsIconProvider()); +} + + void NetctlPlugin::registerTypes(const char *uri) { Q_ASSERT(uri == QLatin1String("org.kde.plasma.private.netctl")); diff --git a/sources/plasmoid-kf5/plugin/netctl.h b/sources/plasmoid-kf5/plugin/netctl.h index a77269e..7e25a58 100644 --- a/sources/plasmoid-kf5/plugin/netctl.h +++ b/sources/plasmoid-kf5/plugin/netctl.h @@ -30,6 +30,7 @@ class NetctlPlugin : public QQmlExtensionPlugin Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QQmlExtensionInterface") public: + void initializeEngine(QQmlEngine *engine, const char *uri); void registerTypes(const char *uri); }; diff --git a/sources/plasmoid-kf5/plugin/netctladds.cpp b/sources/plasmoid-kf5/plugin/netctladds.cpp index 55bc305..0a650a8 100644 --- a/sources/plasmoid-kf5/plugin/netctladds.cpp +++ b/sources/plasmoid-kf5/plugin/netctladds.cpp @@ -32,12 +32,27 @@ #include "version.h" +NetctlAddsIconProvider::NetctlAddsIconProvider() + : QQuickImageProvider(QQmlImageProviderBase::Pixmap) +{ +} + + +QPixmap NetctlAddsIconProvider::requestPixmap(const QString &id, QSize *size, const QSize &requestedSize) +{ + Q_UNUSED(size); + Q_UNUSED(requestedSize); + + return QPixmap(QString("qrc:/") + id); +} + + NetctlAdds::NetctlAdds(QObject *parent) : QObject(parent) { // debug QProcessEnvironment environment = QProcessEnvironment::systemEnvironment(); - QString debugEnv = environment.value(QString("NETCTLGUI_DEBUG"), QString("no")); + QString debugEnv = environment.value(QString("DEBUG"), QString("no")); debug = (debugEnv == QString("yes")); } @@ -311,14 +326,16 @@ QMap NetctlAdds::readDataEngineConfiguration() if (debug) qDebug() << PDEBUG; QMap configuration; - QString fileName = QStandardPaths::locate(QStandardPaths::ConfigLocation, QString("netctl.conf")); + QString fileName = QStandardPaths::locate(QStandardPaths::ConfigLocation, QString("plasma-dataengine-netctl.conf")); if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << fileName; QSettings settings(fileName, QSettings::IniFormat); + settings.beginGroup(QString("Netctl commands")); configuration[QString("NETCTLCMD")] = settings.value(QString("NETCTLCMD"), QString("/usr/bin/netctl")); configuration[QString("NETCTLAUTOCMD")] = settings.value(QString("NETCTLAUTOCMD"), QString("/usr/bin/netctl-auto")); settings.endGroup(); + settings.beginGroup(QString("External IP")); configuration[QString("EXTIP4")] = settings.value(QString("EXTIP4"), QString("false")); configuration[QString("EXTIP4CMD")] = settings.value(QString("EXTIP4CMD"), QString("curl ip4.telize.com")); @@ -334,7 +351,7 @@ void NetctlAdds::writeDataEngineConfiguration(const QMap conf { if (debug) qDebug() << PDEBUG; - QString fileName = QStandardPaths::writableLocation(QStandardPaths::ConfigLocation) + QString("/netctl.conf"); + QString fileName = QStandardPaths::writableLocation(QStandardPaths::ConfigLocation) + QString("/plasma-dataengine-netctl.conf"); QSettings settings(fileName, QSettings::IniFormat); if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << settings.fileName(); diff --git a/sources/plasmoid-kf5/plugin/netctladds.h b/sources/plasmoid-kf5/plugin/netctladds.h index 2d18236..cf47f2b 100644 --- a/sources/plasmoid-kf5/plugin/netctladds.h +++ b/sources/plasmoid-kf5/plugin/netctladds.h @@ -19,11 +19,22 @@ #ifndef NETCTLADDS_H #define NETCTLADDS_H +#include #include #include +#include #include +class NetctlAddsIconProvider : public QQuickImageProvider +{ +public: + NetctlAddsIconProvider(); + + virtual QPixmap requestPixmap(const QString &id, QSize *size, const QSize &requestedSize); +}; + + class NetctlAdds : public QObject { Q_OBJECT diff --git a/sources/resources/CMakeLists.txt b/sources/resources/CMakeLists.txt index 26fe230..88bd0be 100644 --- a/sources/resources/CMakeLists.txt +++ b/sources/resources/CMakeLists.txt @@ -5,9 +5,9 @@ message (STATUS "Subproject ${SUBPROJECT}") if (BUILD_GUI) install (FILES icon.png DESTINATION share/pixmaps RENAME netctl-gui.png) endif () -if (BUILD_DATAENGINE OR BUILD_PLASMOID) +if (BUILD_PLASMOID) install (FILES icon-plasmoid.png DESTINATION share/pixmaps RENAME netctl-gui-widget.png) install (FILES network-idle-64x64.png DESTINATION share/icons/hicolor/64x64/apps RENAME netctl-idle.png) install (FILES network-offline-64x64.png DESTINATION share/icons/hicolor/64x64/apps RENAME netctl-offline.png) - add_subdirectory (po) + add_subdirectory (translations-plasmoid) endif () diff --git a/sources/resources/po/CMakeLists.txt b/sources/resources/po/CMakeLists.txt deleted file mode 100644 index fc65792..0000000 --- a/sources/resources/po/CMakeLists.txt +++ /dev/null @@ -1,32 +0,0 @@ -find_package(Gettext REQUIRED) -if (NOT GETTEXT_MSGFMT_EXECUTABLE) - message(FATAL_ERROR "Please install the msgfmt binary") -endif (NOT GETTEXT_MSGFMT_EXECUTABLE) - -if (BUILD_KDE4) - find_package(KDE4 REQUIRED) - set (MO_NAME plasma_applet_netctl.mo) -else () - find_package (ECM 0.0.12 REQUIRED NO_MODULE) - set (CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR}) - find_package(KF5 REQUIRED COMPONENTS I18n) - include (KDEInstallDirs) - set (MO_NAME plasma_applet_org.kde.plasma.netctl.mo) -endif () - -file (GLOB _po_files *.po) -set (_gmoFiles) - -foreach (_current_PO_FILE ${_po_files}) - get_filename_component (_lang ${_current_PO_FILE} NAME_WE) - set (_gmoFile ${CMAKE_CURRENT_BINARY_DIR}/${_lang}.gmo) - add_custom_command (OUTPUT ${_gmoFile} - COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${_gmoFile} ${_current_PO_FILE} - WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" - DEPENDS ${_current_PO_FILE} - ) - - install (FILES ${CMAKE_CURRENT_BINARY_DIR}/${_lang}.gmo DESTINATION ${LOCALE_INSTALL_DIR}/${_lang}/LC_MESSAGES/ RENAME ${MO_NAME}) - list (APPEND _gmoFiles ${_gmoFile}) -endforeach (_current_PO_FILE) -add_custom_target (pofiles ALL DEPENDS ${_gmoFiles}) diff --git a/sources/resources/translations-plasmoid/CMakeLists.txt b/sources/resources/translations-plasmoid/CMakeLists.txt new file mode 100644 index 0000000..9644ff4 --- /dev/null +++ b/sources/resources/translations-plasmoid/CMakeLists.txt @@ -0,0 +1,29 @@ +find_package(Gettext REQUIRED) + +if (BUILD_KDE4) + find_package (KDE4 REQUIRED) + set (MO_NAME plasma_applet_netctl.mo) +else () + find_package (ECM 0.0.12 REQUIRED NO_MODULE) + set (CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR}) + find_package (KF5 REQUIRED COMPONENTS I18n) + include (KDEInstallDirs) + set (MO_NAME plasma_applet_org.kde.plasma.netctl.mo) +endif () + +file (GLOB _po_files *.po) +set (_gmoFiles) + +foreach (_current_PO_FILE ${_po_files}) + get_filename_component (_lang ${_current_PO_FILE} NAME_WE) + set (_gmoFile ${CMAKE_CURRENT_BINARY_DIR}/${_lang}.gmo) + add_custom_command (OUTPUT ${_gmoFile} + COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${_gmoFile} ${_current_PO_FILE} + WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" + DEPENDS ${_current_PO_FILE} + ) + + install (FILES ${CMAKE_CURRENT_BINARY_DIR}/${_lang}.gmo DESTINATION ${LOCALE_INSTALL_DIR}/${_lang}/LC_MESSAGES/ RENAME ${MO_NAME}) + list (APPEND _gmoFiles ${_gmoFile}) +endforeach (_current_PO_FILE) +add_custom_target (pofiles ALL DEPENDS ${_gmoFiles}) diff --git a/sources/resources/po/en.po b/sources/resources/translations-plasmoid/en.po similarity index 100% rename from sources/resources/po/en.po rename to sources/resources/translations-plasmoid/en.po diff --git a/sources/resources/po/extract_messages.sh b/sources/resources/translations-plasmoid/extract_messages.sh similarity index 100% rename from sources/resources/po/extract_messages.sh rename to sources/resources/translations-plasmoid/extract_messages.sh diff --git a/sources/resources/po/ja.po b/sources/resources/translations-plasmoid/ja.po similarity index 100% rename from sources/resources/po/ja.po rename to sources/resources/translations-plasmoid/ja.po diff --git a/sources/resources/po/plasma_applet_netctl.pot b/sources/resources/translations-plasmoid/plasma_applet_netctl.pot similarity index 100% rename from sources/resources/po/plasma_applet_netctl.pot rename to sources/resources/translations-plasmoid/plasma_applet_netctl.pot diff --git a/sources/resources/po/ru.po b/sources/resources/translations-plasmoid/ru.po similarity index 100% rename from sources/resources/po/ru.po rename to sources/resources/translations-plasmoid/ru.po diff --git a/sources/test/CMakeLists.txt b/sources/test/CMakeLists.txt index f2f2ef9..fe8fbf8 100644 --- a/sources/test/CMakeLists.txt +++ b/sources/test/CMakeLists.txt @@ -31,22 +31,22 @@ include_directories (${CMAKE_CURRENT_SOURCE_DIR}/../${PROJECT_LIBRARY}/include/ link_directories (${PROJECT_LIBRARY}/src/lib) if (USE_QT5) - find_package(Qt5 COMPONENTS Core DBus Test REQUIRED) - add_definitions(${Qt5Core_DEFINITIONS} ${Qt5DBus_DEFINITIONS} ${Qt5Test_DEFINITIONS}) - include_directories (${Qt5Core_INCLUDE_DIRS} ${Qt5DBus_INCLUDE_DIRS} ${Qt5Test_INCLUDE_DIRS}) - set (QT_NEEDED_LIBS ${Qt5Core_LIBRARIES} ${Qt5DBus_LIBRARIES} ${Qt5Test_LIBRARIES}) - qt5_wrap_cpp (NETCTL_MOC_SOURCES ${NETCTL_HEADERS}) - qt5_wrap_cpp (NETCTLAUTO_MOC_SOURCES ${NETCTLAUTO_HEADERS}) - qt5_wrap_cpp (PROFILE_MOC_SOURCES ${PROFILE_HEADERS}) - qt5_wrap_cpp (WPASUP_MOC_SOURCES ${WPASUP_HEADERS}) + find_package (Qt5 COMPONENTS Core DBus Test REQUIRED) + add_definitions (${Qt5Core_DEFINITIONS} ${Qt5DBus_DEFINITIONS} ${Qt5Test_DEFINITIONS}) + include_directories (${Qt5Core_INCLUDE_DIRS} ${Qt5DBus_INCLUDE_DIRS} ${Qt5Test_INCLUDE_DIRS}) + set (QT_NEEDED_LIBS ${Qt5Core_LIBRARIES} ${Qt5DBus_LIBRARIES} ${Qt5Test_LIBRARIES}) + qt5_wrap_cpp (NETCTL_MOC_SOURCES ${NETCTL_HEADERS}) + qt5_wrap_cpp (NETCTLAUTO_MOC_SOURCES ${NETCTLAUTO_HEADERS}) + qt5_wrap_cpp (PROFILE_MOC_SOURCES ${PROFILE_HEADERS}) + qt5_wrap_cpp (WPASUP_MOC_SOURCES ${WPASUP_HEADERS}) else () - find_package (Qt4 COMPONENTS QtCore QtDBus QtTest REQUIRED) - include (${QT_USE_FILE}) - set (QT_NEEDED_LIBS ${QT_QTCORE_LIBRARY} ${QT_QTDBUS_LIBRARY} ${QT_QTTEST_LIBRARY}) - qt4_wrap_cpp (NETCTL_MOC_SOURCES ${NETCTL_HEADERS}) - qt4_wrap_cpp (NETCTLAUTO_MOC_SOURCES ${NETCTLAUTO_HEADERS}) - qt4_wrap_cpp (PROFILE_MOC_SOURCES ${PROFILE_HEADERS}) - qt4_wrap_cpp (WPASUP_MOC_SOURCES ${WPASUP_HEADERS}) + find_package (Qt4 COMPONENTS QtCore QtDBus QtTest REQUIRED) + include (${QT_USE_FILE}) + set (QT_NEEDED_LIBS ${QT_QTCORE_LIBRARY} ${QT_QTDBUS_LIBRARY} ${QT_QTTEST_LIBRARY}) + qt4_wrap_cpp (NETCTL_MOC_SOURCES ${NETCTL_HEADERS}) + qt4_wrap_cpp (NETCTLAUTO_MOC_SOURCES ${NETCTLAUTO_HEADERS}) + qt4_wrap_cpp (PROFILE_MOC_SOURCES ${PROFILE_HEADERS}) + qt4_wrap_cpp (WPASUP_MOC_SOURCES ${WPASUP_HEADERS}) endif() # netctl diff --git a/sources/version.h.in b/sources/version.h.in index 29fcd1d..1649fd2 100644 --- a/sources/version.h.in +++ b/sources/version.h.in @@ -39,6 +39,7 @@ #define PROJECT_DBUS_SYSTEMCONF_PATH "@DBUS_SYSTEMCONF_PATH@" #define PROJECT_SYSTEMD_SERVICE_PATH "@SYSTEMD_SERVICE_PATH@" #define PROJECT_USE_CAPABILITIES "@USE_CAPABILITIES@" +#define PROJECT_USE_KDE4 "@BUILD_KDE4@" #define PROJECT_USE_QT5 "@USE_QT5@" // dbus configuration