Add kirigami template code. disable dbus due to some compilation issues.
This commit is contained in:
3
3rdparty/CMakeLists.txt
vendored
3
3rdparty/CMakeLists.txt
vendored
@@ -1,3 +1,4 @@
|
|||||||
set(BUILD_SHARED_LIBS 0)
|
set(BUILD_SHARED_LIBS 0)
|
||||||
|
|
||||||
|
set(DISABLE_DBUS ON)
|
||||||
add_subdirectory(kirigami)
|
add_subdirectory(kirigami)
|
||||||
|
|||||||
54
src/main.cpp
54
src/main.cpp
@@ -1,9 +1,57 @@
|
|||||||
#include <QGuiApplication>
|
|
||||||
#include <QQmlApplicationEngine>
|
#include <QQmlApplicationEngine>
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
#ifdef Q_OS_ANDROID
|
||||||
|
#include <QGuiApplication>
|
||||||
|
#else
|
||||||
|
#include <QApplication>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <QtQml>
|
||||||
|
#include <QUrl>
|
||||||
|
#include <QColor>
|
||||||
|
|
||||||
|
#ifdef Q_OS_ANDROID
|
||||||
|
#include <QtAndroid>
|
||||||
|
// WindowManager.LayoutParams
|
||||||
|
#define FLAG_TRANSLUCENT_STATUS 0x04000000
|
||||||
|
#define FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS 0x80000000
|
||||||
|
// View
|
||||||
|
#define SYSTEM_UI_FLAG_LIGHT_STATUS_BAR 0x00002000
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
Q_IMPORT_PLUGIN(KirigamiPlugin)
|
||||||
|
|
||||||
|
Q_DECL_EXPORT int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
|
QGuiApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
|
||||||
|
//The desktop QQC2 style needs it to be a QApplication
|
||||||
|
#ifdef Q_OS_ANDROID
|
||||||
QGuiApplication app(argc, argv);
|
QGuiApplication app(argc, argv);
|
||||||
QQmlApplicationEngine engine(QUrl(QStringLiteral("qrc:/qml/main.qml")));
|
#else
|
||||||
|
QApplication app(argc, argv);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
//qputenv("QML_IMPORT_TRACE", "1");
|
||||||
|
|
||||||
|
QQmlApplicationEngine engine;
|
||||||
|
|
||||||
|
engine.load(QUrl(QStringLiteral("qrc:/qml/main.qml")));
|
||||||
|
|
||||||
|
if (engine.rootObjects().isEmpty()) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
//HACK to color the system bar on Android, use qtandroidextras and call the appropriate Java methods
|
||||||
|
#ifdef Q_OS_ANDROID
|
||||||
|
QtAndroid::runOnAndroidThread([=]() {
|
||||||
|
QAndroidJniObject window = QtAndroid::androidActivity().callObjectMethod("getWindow", "()Landroid/view/Window;");
|
||||||
|
window.callMethod<void>("addFlags", "(I)V", FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
|
||||||
|
window.callMethod<void>("clearFlags", "(I)V", FLAG_TRANSLUCENT_STATUS);
|
||||||
|
window.callMethod<void>("setStatusBarColor", "(I)V", QColor("#2196f3").rgba());
|
||||||
|
window.callMethod<void>("setNavigationBarColor", "(I)V", QColor("#2196f3").rgba());
|
||||||
|
});
|
||||||
|
#endif
|
||||||
|
|
||||||
return app.exec();
|
return app.exec();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,14 +1,38 @@
|
|||||||
import QtQuick 2.0
|
import QtQuick 2.7
|
||||||
import QtQuick.Window 2.0
|
import QtQuick.Controls 2.0
|
||||||
|
import QtQuick.Layouts 1.3
|
||||||
|
|
||||||
Window
|
import org.kde.kirigami 2.4 as Kirigami
|
||||||
{
|
|
||||||
|
Kirigami.ApplicationWindow {
|
||||||
visible: true
|
visible: true
|
||||||
width: 300
|
title: qsTr("Hello World")
|
||||||
height: 240
|
|
||||||
|
|
||||||
Rectangle {
|
//pageStack.initialPage: Page1 {}
|
||||||
anchors.fill: parent
|
|
||||||
color: "steelblue"
|
globalDrawer: Kirigami.GlobalDrawer {
|
||||||
|
title: "Hello App"
|
||||||
|
titleIcon: "applications-graphics"
|
||||||
|
actions: [
|
||||||
|
Kirigami.Action {
|
||||||
|
text: "View"
|
||||||
|
iconName: "view-list-icons"
|
||||||
|
Kirigami.Action {
|
||||||
|
text: "action 1"
|
||||||
|
}
|
||||||
|
Kirigami.Action {
|
||||||
|
text: "action 2"
|
||||||
|
}
|
||||||
|
Kirigami.Action {
|
||||||
|
text: "action 3"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
Kirigami.Action {
|
||||||
|
text: "action 3"
|
||||||
|
},
|
||||||
|
Kirigami.Action {
|
||||||
|
text: "action 4"
|
||||||
|
}
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
15
src/qtquickcontrols2.conf
Normal file
15
src/qtquickcontrols2.conf
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
; This file can be edited to change the style of the application
|
||||||
|
; See Styling Qt Quick Controls 2 in the documentation for details:
|
||||||
|
; http://doc.qt.io/qt-5/qtquickcontrols2-styles.html
|
||||||
|
|
||||||
|
[Controls]
|
||||||
|
Style=Material
|
||||||
|
|
||||||
|
[Universal]
|
||||||
|
Theme=Light
|
||||||
|
;Accent=Steel
|
||||||
|
|
||||||
|
[Material]
|
||||||
|
Theme=Light
|
||||||
|
Accent=BlueGrey
|
||||||
|
Primary=BlueGray
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
<!DOCTYPE RCC><RCC version="1.0">
|
<!DOCTYPE RCC><RCC version="1.0">
|
||||||
<qresource>
|
<qresource>
|
||||||
<file>qml/main.qml</file>
|
<file>qml/main.qml</file>
|
||||||
|
<file>qtquickcontrols2.conf</file>
|
||||||
</qresource>
|
</qresource>
|
||||||
</RCC>
|
</RCC>
|
||||||
|
|||||||
Reference in New Issue
Block a user