From 12160008f45b2b470d29ff475fc3e7eb3a263ebd Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Mon, 22 Feb 2016 11:11:28 +0100 Subject: Added the kube logo --- applications/kube-mail/main.cpp | 29 +++++++++++++++++++++- .../kube-mail/package/contents/ui/main.qml | 18 ++++++++++++++ 2 files changed, 46 insertions(+), 1 deletion(-) (limited to 'applications/kube-mail') diff --git a/applications/kube-mail/main.cpp b/applications/kube-mail/main.cpp index 0e9556c9..5efe14ff 100644 --- a/applications/kube-mail/main.cpp +++ b/applications/kube-mail/main.cpp @@ -3,14 +3,41 @@ #include #include +#include +#include #include +class KubeImageProvider : public QQuickImageProvider +{ +public: + KubeImageProvider() + : QQuickImageProvider(QQuickImageProvider::Pixmap) + { + } + + QPixmap requestPixmap(const QString &id, QSize *size, const QSize &requestedSize) Q_DECL_OVERRIDE + { + const auto icon = QIcon::fromTheme(id); + auto expectedSize = requestedSize; + if (!icon.availableSizes().contains(requestedSize) && !icon.availableSizes().isEmpty()) { + expectedSize = icon.availableSizes().first(); + } + const auto pixmap = icon.pixmap(expectedSize); + if (size) { + *size = pixmap.size(); + } + return pixmap; + } +}; + int main(int argc, char *argv[]) { QGuiApplication app(argc, argv); auto package = KPackage::PackageLoader::self()->loadPackage("KPackage/GenericQML", "org.kde.kube.mail"); Q_ASSERT(package.isValid()); - QQmlApplicationEngine engine(QUrl::fromLocalFile(package.filePath("mainscript"))); + QQmlApplicationEngine engine; + engine.addImageProvider(QLatin1String("kube"), new KubeImageProvider); + engine.load(QUrl::fromLocalFile(package.filePath("mainscript"))); return app.exec(); } diff --git a/applications/kube-mail/package/contents/ui/main.qml b/applications/kube-mail/package/contents/ui/main.qml index 9d341e0a..5549bcde 100644 --- a/applications/kube-mail/package/contents/ui/main.qml +++ b/applications/kube-mail/package/contents/ui/main.qml @@ -67,6 +67,24 @@ ApplicationWindow { Row { anchors.fill: parent + Rectangle { + height: parent.height + color: "transparent" + Image { + id: img + height: parent.height + fillMode: Image.PreserveAspectCrop + anchors { + verticalCenter: parent.verticalCenter + left: parent.left + leftMargin: -20 + } + source: "image://kube/kube_logo" + sourceSize.height: parent.height * 2.5 + } + width: img.width * 0.7 + } + PlasmaComponents.ToolButton { height: parent.height iconName: "mail-message-new" -- cgit v1.2.3