From 57291511fec8d476f3f7290891bbd2a595f07f43 Mon Sep 17 00:00:00 2001 From: Michael Bohlender Date: Sun, 20 Dec 2015 00:55:34 +0100 Subject: create initial settings plugin --- framework/settings/CMakeLists.txt | 14 ++++++++++++++ framework/settings/maildir_resource.cpp | 6 ++++++ framework/settings/maildir_resource.h | 18 ++++++++++++++++++ framework/settings/qmldir | 3 +++ framework/settings/settingsplugin.cpp | 13 +++++++++++++ framework/settings/settingsplugin.h | 13 +++++++++++++ 6 files changed, 67 insertions(+) create mode 100644 framework/settings/CMakeLists.txt create mode 100644 framework/settings/maildir_resource.cpp create mode 100644 framework/settings/maildir_resource.h create mode 100644 framework/settings/qmldir create mode 100644 framework/settings/settingsplugin.cpp create mode 100644 framework/settings/settingsplugin.h diff --git a/framework/settings/CMakeLists.txt b/framework/settings/CMakeLists.txt new file mode 100644 index 00000000..3aca76dd --- /dev/null +++ b/framework/settings/CMakeLists.txt @@ -0,0 +1,14 @@ +set(settingsplugin_SRCS + settingsplugin.cpp + maildir_resource.cpp +) + +add_library(settingsplugin SHARED ${settingsplugin_SRCS}) + +qt5_use_modules(settingsplugin Core Quick Qml) + +target_link_libraries(settingsplugin /work/install/lib64/libakonadi2common.so) +#target_link_libraries(settingsplugin /home/mike/projects/_install/lib/x86_64-linux-gnu/libakonadi2common.so) + +install(TARGETS settingsplugin DESTINATION ${QML_INSTALL_DIR}/org/kde/akonadi2/settings) +install(FILES qmldir DESTINATION ${QML_INSTALL_DIR}/org/kde/akonadi2/settings) \ No newline at end of file diff --git a/framework/settings/maildir_resource.cpp b/framework/settings/maildir_resource.cpp new file mode 100644 index 00000000..f390046d --- /dev/null +++ b/framework/settings/maildir_resource.cpp @@ -0,0 +1,6 @@ +#include "maildir_resource.h" + +MaildirResouceController::MaildirResouceController(QObject *parent) : QObject(parent) +{ + +} diff --git a/framework/settings/maildir_resource.h b/framework/settings/maildir_resource.h new file mode 100644 index 00000000..3f0f9f22 --- /dev/null +++ b/framework/settings/maildir_resource.h @@ -0,0 +1,18 @@ +#pragma once + +#include +#include +#include + +class MaildirResouceController : public QObject +{ + Q_OBJECT + +public: + explicit MaildirResouceController(QObject *parent = Q_NULLPTR); + + +private: + QString m_name; + QUrl m_folderLocation; +}; \ No newline at end of file diff --git a/framework/settings/qmldir b/framework/settings/qmldir new file mode 100644 index 00000000..4db161bc --- /dev/null +++ b/framework/settings/qmldir @@ -0,0 +1,3 @@ +module org.kde.akonadi2.settings + +plugin settingsplugin \ No newline at end of file diff --git a/framework/settings/settingsplugin.cpp b/framework/settings/settingsplugin.cpp new file mode 100644 index 00000000..a092355a --- /dev/null +++ b/framework/settings/settingsplugin.cpp @@ -0,0 +1,13 @@ +#include "settingsplugin.h" + +#include "maildir_resource.h" + +#include + +void SettingsPlugin::registerTypes (const char *uri) +{ + Q_ASSERT(uri == QLatin1String("org.kde.akonadi2.settings")); + + + qmlRegisterType(uri, 1, 0, "Maildir"); +} diff --git a/framework/settings/settingsplugin.h b/framework/settings/settingsplugin.h new file mode 100644 index 00000000..7bb84e24 --- /dev/null +++ b/framework/settings/settingsplugin.h @@ -0,0 +1,13 @@ +#pragma once + +#include +#include + +class SettingsPlugin : public QQmlExtensionPlugin +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QQmlExtensionInterface") + +public: + virtual void registerTypes(const char *uri); +}; \ No newline at end of file -- cgit v1.2.3