Initial import
This commit is contained in:
53
.idea/$PRODUCT_WORKSPACE_FILE$
generated
Normal file
53
.idea/$PRODUCT_WORKSPACE_FILE$
generated
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="masterDetails">
|
||||||
|
<states>
|
||||||
|
<state key="GlobalLibrariesConfigurable.UI">
|
||||||
|
<settings>
|
||||||
|
<splitter-proportions>
|
||||||
|
<option name="proportions">
|
||||||
|
<list>
|
||||||
|
<option value="0.2" />
|
||||||
|
</list>
|
||||||
|
</option>
|
||||||
|
</splitter-proportions>
|
||||||
|
</settings>
|
||||||
|
</state>
|
||||||
|
<state key="JdkListConfigurable.UI">
|
||||||
|
<settings>
|
||||||
|
<last-edited>1.8</last-edited>
|
||||||
|
<splitter-proportions>
|
||||||
|
<option name="proportions">
|
||||||
|
<list>
|
||||||
|
<option value="0.2" />
|
||||||
|
</list>
|
||||||
|
</option>
|
||||||
|
</splitter-proportions>
|
||||||
|
</settings>
|
||||||
|
</state>
|
||||||
|
<state key="ProjectJDKs.UI">
|
||||||
|
<settings>
|
||||||
|
<last-edited>Android API 26 Platform</last-edited>
|
||||||
|
<splitter-proportions>
|
||||||
|
<option name="proportions">
|
||||||
|
<list>
|
||||||
|
<option value="0.2" />
|
||||||
|
</list>
|
||||||
|
</option>
|
||||||
|
</splitter-proportions>
|
||||||
|
</settings>
|
||||||
|
</state>
|
||||||
|
<state key="ProjectLibrariesConfigurable.UI">
|
||||||
|
<settings>
|
||||||
|
<splitter-proportions>
|
||||||
|
<option name="proportions">
|
||||||
|
<list>
|
||||||
|
<option value="0.2" />
|
||||||
|
</list>
|
||||||
|
</option>
|
||||||
|
</splitter-proportions>
|
||||||
|
</settings>
|
||||||
|
</state>
|
||||||
|
</states>
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
2
.idea/.gitignore
generated
vendored
Normal file
2
.idea/.gitignore
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
# Default ignored files
|
||||||
|
/workspace.xml
|
||||||
15
.idea/inspectionProfiles/Project_Default.xml
generated
Normal file
15
.idea/inspectionProfiles/Project_Default.xml
generated
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
<component name="InspectionProjectProfileManager">
|
||||||
|
<profile version="1.0">
|
||||||
|
<option name="myName" value="Project Default" />
|
||||||
|
<inspection_tool class="PyCompatibilityInspection" enabled="true" level="WARNING" enabled_by_default="true">
|
||||||
|
<option name="ourVersions">
|
||||||
|
<value>
|
||||||
|
<list size="2">
|
||||||
|
<item index="0" class="java.lang.String" itemvalue="2.7" />
|
||||||
|
<item index="1" class="java.lang.String" itemvalue="3.8" />
|
||||||
|
</list>
|
||||||
|
</value>
|
||||||
|
</option>
|
||||||
|
</inspection_tool>
|
||||||
|
</profile>
|
||||||
|
</component>
|
||||||
9
.idea/misc.xml
generated
Normal file
9
.idea/misc.xml
generated
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_12" default="false" project-jdk-name="Pipenv (QiFlora)" project-jdk-type="Python SDK">
|
||||||
|
<output url="file://$PROJECT_DIR$/out" />
|
||||||
|
</component>
|
||||||
|
<component name="PythonCompatibilityInspectionAdvertiser">
|
||||||
|
<option name="version" value="3" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
8
.idea/modules.xml
generated
Normal file
8
.idea/modules.xml
generated
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="ProjectModuleManager">
|
||||||
|
<modules>
|
||||||
|
<module fileurl="file://$PROJECT_DIR$/QiFlora.iml" filepath="$PROJECT_DIR$/QiFlora.iml" />
|
||||||
|
</modules>
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
6
.idea/vcs.xml
generated
Normal file
6
.idea/vcs.xml
generated
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="VcsDirectoryMappings">
|
||||||
|
<mapping directory="" vcs="Git" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
46
CMakeLists.txt
Normal file
46
CMakeLists.txt
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
project(qiflora)
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 2.8.12)
|
||||||
|
set(KF5_MIN_VERSION "5.18.0")
|
||||||
|
set(QT_MIN_VERSION "5.5.0")
|
||||||
|
|
||||||
|
################# Disallow in-source build #################
|
||||||
|
|
||||||
|
if("${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
|
||||||
|
message(FATAL_ERROR "This application requires an out of source build. Please create a separate build directory.")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
include(FeatureSummary)
|
||||||
|
|
||||||
|
################# set KDE specific information #################
|
||||||
|
|
||||||
|
find_package(ECM 0.0.8 REQUIRED NO_MODULE)
|
||||||
|
|
||||||
|
# where to look first for cmake modules, before ${CMAKE_ROOT}/Modules/ is checked
|
||||||
|
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
|
||||||
|
|
||||||
|
include(ECMSetupVersion)
|
||||||
|
include(ECMGenerateHeaders)
|
||||||
|
include(KDEInstallDirs)
|
||||||
|
include(KDECMakeSettings)
|
||||||
|
include(ECMPoQmTools)
|
||||||
|
include(KDECompilerSettings NO_POLICY_SCOPE)
|
||||||
|
|
||||||
|
################# Find dependencies #################
|
||||||
|
|
||||||
|
find_package(Qt5 ${QT_MIN_VERSION} REQUIRED NO_MODULE COMPONENTS Core Quick Test Gui Svg QuickControls2)
|
||||||
|
find_package(KF5Kirigami2 ${KF5_MIN_VERSION})
|
||||||
|
|
||||||
|
################# Enable C++11 features for clang and gcc #################
|
||||||
|
|
||||||
|
if(UNIX)
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -std=c++0x")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
################# build and install #################
|
||||||
|
add_subdirectory(src)
|
||||||
|
|
||||||
|
install(PROGRAMS org.kde.qiflora.desktop DESTINATION ${KDE_INSTALL_APPDIR})
|
||||||
|
install(FILES org.kde.qiflora.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR})
|
||||||
|
|
||||||
|
feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)
|
||||||
7
README.md
Normal file
7
README.md
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
# Kirigami application template
|
||||||
|
|
||||||
|
This repository can be used as a template to develop Plasma Mobile applications.
|
||||||
|
It already includes templates for the qml ui, a c++ part, app metadata and flatpak packaging.
|
||||||
|
|
||||||
|
# Usage
|
||||||
|
See [docs.plasma-mobile.org](https://docs.plasma-mobile.org/AppDevelopment.html).
|
||||||
18
org.kde.qiflora.appdata.xml
Normal file
18
org.kde.qiflora.appdata.xml
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<component type="desktop-application">
|
||||||
|
<id>org.kde.qiflora</id>
|
||||||
|
<name>Kirigami Example Application</name>
|
||||||
|
<summary>A short summary describing what this software is about</summary>
|
||||||
|
<metadata_license>A permissive license for this metadata, e.g. "FSFAP"</metadata_license>
|
||||||
|
<project_license>The license of this software as SPDX string, e.g. "GPL-3+"</project_license>
|
||||||
|
<developer_name>The software vendor name, e.g. "ACME Corporation"</developer_name>
|
||||||
|
<description>
|
||||||
|
<p>Multiple paragraphs of long description, describing this software component.</p>
|
||||||
|
<p>You can also use ordered and unordered lists:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Feature 1</li>
|
||||||
|
<li>Feature 2</li>
|
||||||
|
</ul>
|
||||||
|
<p>Keep in mind to XML-escape characters, and that this is not HTML markup.</p>
|
||||||
|
</description>
|
||||||
|
</component>
|
||||||
10
org.kde.qiflora.desktop
Normal file
10
org.kde.qiflora.desktop
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Name=qiflora
|
||||||
|
Comment=My first Plasma Mobile App
|
||||||
|
Version=1.0
|
||||||
|
Exec=qiflora
|
||||||
|
MimeType=application/x-qiflora;
|
||||||
|
Icon=applications-development
|
||||||
|
Type=Application
|
||||||
|
Terminal=false
|
||||||
|
Categories=Qt;KDE;
|
||||||
28
org.kde.qiflora.json
Normal file
28
org.kde.qiflora.json
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
{
|
||||||
|
"id": "org.kde.qiflora",
|
||||||
|
"runtime": "org.kde.Platform",
|
||||||
|
"runtime-version": "5.12",
|
||||||
|
"sdk": "org.kde.Sdk",
|
||||||
|
"command": "qiflora",
|
||||||
|
"tags": ["nightly"],
|
||||||
|
"desktop-file-name-suffix": " (Nightly)",
|
||||||
|
"finish-args": [
|
||||||
|
"--share=ipc",
|
||||||
|
"--share=network",
|
||||||
|
"--socket=x11",
|
||||||
|
"--socket=wayland",
|
||||||
|
"--device=dri",
|
||||||
|
"--filesystem=home",
|
||||||
|
"--talk-name=org.freedesktop.Notifications"
|
||||||
|
],
|
||||||
|
"separate-locales": false,
|
||||||
|
|
||||||
|
"modules": [
|
||||||
|
{
|
||||||
|
"name": "qiflora",
|
||||||
|
"buildsystem": "cmake-ninja",
|
||||||
|
"builddir": true,
|
||||||
|
"sources": [ { "type": "dir", "path": ".", "skip": [".git"] } ]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
8
src/CMakeLists.txt
Normal file
8
src/CMakeLists.txt
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
set(qiflora_SRCS
|
||||||
|
main.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
qt5_add_resources(RESOURCES resources.qrc)
|
||||||
|
add_executable(qiflora ${qiflora_SRCS} ${RESOURCES})
|
||||||
|
target_link_libraries(qiflora Qt5::Core Qt5::Qml Qt5::Quick Qt5::Svg)
|
||||||
|
install(TARGETS qiflora ${KF5_INSTALL_TARGETS_DEFAULT_ARGS})
|
||||||
30
src/contents/ui/main.qml
Normal file
30
src/contents/ui/main.qml
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
import QtQuick 2.1
|
||||||
|
import org.kde.kirigami 2.4 as Kirigami
|
||||||
|
import QtQuick.Controls 2.0 as Controls
|
||||||
|
|
||||||
|
Kirigami.ApplicationWindow {
|
||||||
|
id: root
|
||||||
|
|
||||||
|
title: "Hello"
|
||||||
|
|
||||||
|
pageStack.initialPage: mainPageComponent
|
||||||
|
|
||||||
|
Component {
|
||||||
|
id: mainPageComponent
|
||||||
|
|
||||||
|
Kirigami.Page {
|
||||||
|
title: "Hello"
|
||||||
|
|
||||||
|
Rectangle {
|
||||||
|
color: "black"
|
||||||
|
anchors.fill: parent
|
||||||
|
|
||||||
|
Controls.Label {
|
||||||
|
text: qsTr("Hello Kirigami")
|
||||||
|
color: "white"
|
||||||
|
anchors.centerIn: parent
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
23
src/main.cpp
Normal file
23
src/main.cpp
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
#include <QApplication>
|
||||||
|
#include <QQmlApplicationEngine>
|
||||||
|
#include <QtQml>
|
||||||
|
#include <QUrl>
|
||||||
|
|
||||||
|
Q_DECL_EXPORT int main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
QGuiApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
|
||||||
|
QApplication app(argc, argv);
|
||||||
|
QCoreApplication::setOrganizationName("KDE");
|
||||||
|
QCoreApplication::setOrganizationDomain("kde.org");
|
||||||
|
QCoreApplication::setApplicationName("qiflora");
|
||||||
|
|
||||||
|
QQmlApplicationEngine engine;
|
||||||
|
|
||||||
|
engine.load(QUrl(QStringLiteral("qrc:///main.qml")));
|
||||||
|
|
||||||
|
if (engine.rootObjects().isEmpty()) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return app.exec();
|
||||||
|
}
|
||||||
5
src/resources.qrc
Normal file
5
src/resources.qrc
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<RCC>
|
||||||
|
<qresource prefix="/">
|
||||||
|
<file alias="main.qml">contents/ui/main.qml</file>
|
||||||
|
</qresource>
|
||||||
|
</RCC>
|
||||||
Reference in New Issue
Block a user