All Projects → KDE → Kirigami

KDE / Kirigami

Licence: other
A QtQuick based components set

Labels

Projects that are alternatives of or similar to Kirigami

Pure Maps
Maps and navigation
Stars: ✭ 136 (-16.56%)
Mutual labels:  qml
Pan Light
百度网盘不限速客户端, golang + qt5, 跨平台图形界面
Stars: ✭ 11,706 (+7081.6%)
Mutual labels:  qml
Haruna
Open source video player built with Qt/QML and libmpv.
Stars: ✭ 147 (-9.82%)
Mutual labels:  qml
Qmlcreator
Stars: ✭ 136 (-16.56%)
Mutual labels:  qml
Qtcam
QtCAM is a free, Open Source Linux Webcamera Software with more than 10 image control settings, extension settings and Color space switching.
Stars: ✭ 141 (-13.5%)
Mutual labels:  qml
Quickios
QML Theme and Component Library for iOS
Stars: ✭ 146 (-10.43%)
Mutual labels:  qml
Qdriverstation
Cross-platform clone of the FRC Driver Station
Stars: ✭ 133 (-18.4%)
Mutual labels:  qml
Qml Loaders
Loading animation implementations in QML
Stars: ✭ 158 (-3.07%)
Mutual labels:  qml
Awesome Quantum Machine Learning
Here you can get all the Quantum Machine learning Basics, Algorithms ,Study Materials ,Projects and the descriptions of the projects around the web
Stars: ✭ 1,940 (+1090.18%)
Mutual labels:  qml
Lime Qml
QML frontend for LimeText
Stars: ✭ 150 (-7.98%)
Mutual labels:  qml
Yubikey Manager Qt
Cross-platform application for configuring any YubiKey over all USB interfaces.
Stars: ✭ 137 (-15.95%)
Mutual labels:  qml
Dotherside
C language library for creating bindings for the Qt QML language
Stars: ✭ 140 (-14.11%)
Mutual labels:  qml
Deepin Movie
Old deepin media player, see deepin-movie-reborn for the new one.
Stars: ✭ 147 (-9.82%)
Mutual labels:  qml
Qtodotxt2
Rewrite of GUI code of QTodoTxt using qml.
Stars: ✭ 136 (-16.56%)
Mutual labels:  qml
Virtual Desktop Bar
KDE Plasma panel applet for managing virtual desktops
Stars: ✭ 153 (-6.13%)
Mutual labels:  qml
Qtandroidtools
A library to manage Android from QML
Stars: ✭ 134 (-17.79%)
Mutual labels:  qml
Qamel
Simple QML binding for Go
Stars: ✭ 147 (-9.82%)
Mutual labels:  qml
Aerial Sddm Theme
SDDM theme with Apple TV Aerial videos
Stars: ✭ 163 (+0%)
Mutual labels:  qml
Qtwebdriver
WebDriver implementation for Qt
Stars: ✭ 152 (-6.75%)
Mutual labels:  qml
Quickpromise
Quick Promise - QML Promise Library
Stars: ✭ 149 (-8.59%)
Mutual labels:  qml

Kirigami

QtQuick plugins to build user interfaces based on the KDE UX guidelines

Introduction

Kirigami is a set of QtQuick components at the moment targeted for mobile use (in the future desktop as well) targeting both Plasma Mobile and Android. It’s not a whole set of components, all the “Primitive” ones like buttons and textboxes are a job for QtQuickControls (soon QtQuickControls2) but it’s a set of high level components to make the creation of applications that look and feel great on mobile as well as desktop devices and follow the Kirigami Human Interface Guidelines.

Build examples to desktop

Build all examples available

mkdir build
cd build
cmake .. -DBUILD_EXAMPLES=ON
make

Than, you can run:

./examples/applicationitemapp/applicationitemapp
# or
./examples/galleryapp/kirigami2gallery

Build the gallery example app on Android

Make sure to install android-sdk, android-ndk and android-qt5-arch, where arch should be the same architecture that you aim to deploy.

mkdir build
cd build
cmake .. \
    -DQTANDROID_EXPORTED_TARGET=kirigami2gallery \
    -DBUILD_EXAMPLES=on \
    -DANDROID_APK_DIR=../examples/galleryapp \
    -DECM_DIR=/path/to/share/ECM/cmake \
    -DCMAKE_TOOLCHAIN_FILE=/usr/share/ECM/toolchain/Android.cmake \
    -DECM_ADDITIONAL_FIND_ROOT_PATH=/path/to/Qt5.7.0/5.7/{arch} \
    -DCMAKE_PREFIX_PATH=/path/to/Qt5.7.0/5.7/{arch}/path/to/Qt5Core \
    -DANDROID_NDK=/path/to/Android/Sdk/ndk-bundle \
    -DANDROID_SDK_ROOT=/path/to/Android/Sdk/ \
    -DANDROID_SDK_BUILD_TOOLS_REVISION=26.0.2 \
    -DCMAKE_INSTALL_PREFIX=/path/to/dummy/install/prefix

You need a -DCMAKE_INSTALL_PREFIX to somewhere in your home, but using an absolute path.

If you have a local checkout of the breeze-icons repo, you can avoid the cloning of the build dir by passing also -DBREEZEICONS_DIR=/path/to/existing/sources/of/breeze-icons

make create-apk-kirigami2gallery

Apk will be generated at ./kirigami2gallery_build_apk/build/outputs/apk/kirigami2gallery_build_apk-debug.apk.

To directly install on a phone:

adb install -r ./kirigami2gallery_build_apk/build/outputs/apk/kirigami2gallery_build_apk-debug.apk

To perform this, your device need to be configureted with USB debugging and install via USB in Developer options.

Some ambient variables must be set before the process: ANDROID_NDK, ANDROID_SDK_ROOT, Qt5_android and JAVA_HOME

export ANDROID_NDK=/path/to/android-ndk
export ANDROID_SDK_ROOT=/path/to/android-sdk
export Qt5_android=/path/to/android-qt5/5.7.0/{arch}
export PATH=$ANDROID_SDK_ROOT/platform-tools/:$PATH
# adapt the following path to your ant installation
export ANT=/usr/bin/ant
export JAVA_HOME=/path/to/lib/jvm/java-8-openjdk/

Build on your application Android, ship it together Kirigami

  1. Build kirigami

    Use the same procedure mentioned above (but without BUILD_EXAMPLES switch):

    • cd into kirigami sources directory;
    • Execute build script:
      mkdir build
      cd build
      
      cmake ..  \
          -DCMAKE_TOOLCHAIN_FILE=/path/to/share/ECM/toolchain/Android.cmake\
          -DCMAKE_PREFIX_PATH=/path/to/Qt5.7.0/5.7/android_armv7/\
          -DCMAKE_INSTALL_PREFIX=/path/to/dummy/install/prefix\
          -DECM_DIR=/path/to/share/ECM/cmake
      
      make
      make install
      
    • Note: omit the make create-apk-kirigami2gallery step.
  2. Build your application

    This guide assumes that you build your application with CMake and use Extra CMake Modules (ECM) from KDE frameworks.

    • cd into your application sources directory;
    • Replace $yourapp with the actual name of your application;
    • Execute build script:
      mkdir build
      cd build
      
      cmake .. \
          -DCMAKE_TOOLCHAIN_FILE=/path/to/share/ECM/toolchain/Android.cmake \
          -DQTANDROID_EXPORTED_TARGET=$yourapp \
          -DANDROID_APK_DIR=../examples/galleryapp/ \
          -DCMAKE_PREFIX_PATH=/path/to/Qt5.7.0/5.7/android_armv7/ \
          -DCMAKE_INSTALL_PREFIX=/path/to/dummy/install/prefix
          
      make
      make install
      make create-apk-$yourapp
      
    • Note: -DCMAKE_INSTALL_PREFIX directory will be the same as where Kirigami was installed, since you need to create an apk package that contains both the kirigami build and the build of your application.

Build an application with qmake

  • Use examples/minimalqmake example as a template.
  • It links statically for Android, but on desktop systems it links to the shared library provided by your distribution. However, static linking mode may be useful for other systems such as iOS or Windows.
  • Static linking only: clone kirigami and breeze-icons git repositories under the 3rdparty folder.
  • Android only: in your main() call KirigamiPlugin::getInstance().registerTypes(); to register QML types.
  • QtCreator should be able to deploy on Android out of the box via auto-detected Android Kit, provided that SDK, NDK and other relevant tools are installed.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].