Merge branch 'master' into features/drawer

This commit is contained in:
Uwe Rathmann 2024-01-17 16:07:22 +01:00
commit e8f649626e
675 changed files with 3550 additions and 1016 deletions

1
.github/FUNDING.yml vendored Normal file
View File

@ -0,0 +1 @@
github: [uwerat]

View File

@ -104,6 +104,7 @@ jobs:
cc: "gcc",
cxx: "g++",
archiver: "7z a",
# generators: "Ninja Multi-Config",
generators: "Ninja",
env: { DISPLAY: ":1" },
cmake:
@ -340,7 +341,7 @@ jobs:
version: "6.5.0"
target: "desktop"
install-deps: "true"
modules: "qtwebengine"
modules: "qtwebengine qtshadertools"
cached: ${{ steps.cache-qt-6-2.outputs.cache-hit }}
setup-python: "false"
tools: ""
@ -431,22 +432,22 @@ jobs:
killall iotdashboard
killall Xvfb
#- name: Configure ( CMake Integration Test )
# shell: bash
# run: |
# mkdir qskinny_build_test
# cmake \
# -S qskinny_source/examples/iotdashboard_smoketest \
# -B qskinny_build_test \
# -G "${{ matrix.config.generators }}" \
# -DCMAKE_BUILD_TYPE=${{ matrix.config.build_type }} \
# -DCMAKE_PREFIX_PATH:PATH="${{ matrix.config.cmake.qtprefixpath }}" \
# -D${{ matrix.config.cmake.qtdirkey }}:PATH="${{ matrix.config.cmake.qtdirvalue }}" \
# -DQSkinny_DIR:PATH=$GITHUB_WORKSPACE/qskinny_install/lib/cmake/QSkinny
#
#- name: Build ( CMake Integration Test )
# shell: bash
# run: cmake --build qskinny_build_test --config ${{ matrix.config.build_type }}
- name: Configure ( CMake Integration Test )
shell: bash
run: |
mkdir qskinny_build_test
cmake \
-S qskinny_source/examples/iotdashboard_smoketest \
-B qskinny_build_test \
-G "${{ matrix.config.generators }}" \
-DCMAKE_BUILD_TYPE=${{ matrix.config.build_type }} \
-DCMAKE_PREFIX_PATH:PATH="${{ matrix.config.cmake.qtprefixpath }}" \
-D${{ matrix.config.cmake.qtdirkey }}:PATH="${{ matrix.config.cmake.qtdirvalue }}" \
-DQSkinny_DIR:PATH=$GITHUB_WORKSPACE/qskinny_install/lib/cmake/QSkinny
- name: Build ( CMake Integration Test )
shell: bash
run: cmake --build qskinny_build_test --config ${{ matrix.config.build_type }}
# - name: Pack
# shell: bash

3
.gitignore vendored
View File

@ -1,6 +1,7 @@
Makefile
.qmake.stash
.uuid
build
obj
moc
rcc
@ -15,3 +16,5 @@ qskinny.pro.user
html
tags
.vscode
.cache
compile_commands.json

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################
@ -7,14 +7,14 @@ cmake_minimum_required(VERSION 3.16.3)
macro(qsk_setup_options)
option(BUILD_PEDANTIC "Enable pedantic compile flags ( only GNU/CLANG )" OFF)
option(BUILD_QSKDLL "Build libs ( not plugins ) as shared library" ON)
option(BUILD_QML_EXPORT "Exporting QSkinny to QML" ON)
option(BUILD_PEDANTIC "Enable pedantic compile flags ( only GNU/CLANG )" OFF)
option(BUILD_QSKDLL "Build libs ( not plugins ) as shared library" ON)
option(BUILD_QML_EXPORT "Exporting QSkinny to QML" ON)
option(BUILD_TOOLS "Build qskinny tools" ON)
option(BUILD_TOOLS "Build qskinny tools" ON)
option(BUILD_INPUTCONTEXT "Build virtual keyboard support" ON)
option(BUILD_EXAMPLES "Build qskinny examples" ON)
option(BUILD_PLAYGROUND "Build qskinny playground" ON)
option(BUILD_EXAMPLES "Build qskinny examples" ON)
option(BUILD_PLAYGROUND "Build qskinny playground" ON)
# we actually want to use cmake_dependent_option - minimum cmake version ??
@ -62,8 +62,18 @@ macro(qsk_setup_build)
endmacro()
macro(qsk_setup_install)
# we have to provide and install a QSkinnyConfig.cmake
# TODO ...
# package vars
set(PACKAGE_NAME ${PROJECT_NAME})
set(PACKAGE_VERSION ${CMAKE_PROJECT_VERSION})
set(PACKAGE_NAMESPACE Qsk::)
set(PACKAGE_LOCATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME})
# install paths for headers and libraries
string(TOLOWER "${PROJECT_NAME}" PACKAGE_DIR)
set(QSK_INSTALL_HEADERS ${CMAKE_INSTALL_INCLUDEDIR}/${PACKAGE_DIR})
set(QSK_INSTALL_LIBS ${CMAKE_INSTALL_LIBDIR}/${PACKAGE_DIR})
endmacro()
############################################################################
@ -75,12 +85,15 @@ project(QSkinny
HOMEPAGE_URL "https://github.com/uwerat/qskinny"
VERSION 0.8.0)
set(QSK_SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR})
set(QSK_CMAKE_DIR ${QSK_SOURCE_DIR}/cmake)
qsk_setup_options()
include(GNUInstallDirs)
# loading helper macros
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
list(APPEND CMAKE_MODULE_PATH ${QSK_CMAKE_DIR})
include("QskConfigMacros")
include("QskFindMacros")
@ -93,6 +106,31 @@ qsk_setup_install()
add_subdirectory(src)
add_subdirectory(skins)
include(CMakePackageConfigHelpers)
# write QSkinnyConfigVersion.cmake file for cmake import
write_basic_package_version_file(
${CMAKE_CURRENT_BINARY_DIR}/${PACKAGE_NAME}ConfigVersion.cmake
VERSION ${PACKAGE_VERSION}
COMPATIBILITY AnyNewerVersion)
# Copy QSkinnyConfig.cmake to build dir
configure_file(${QSK_CMAKE_DIR}/${PACKAGE_NAME}Config.cmake
${CMAKE_CURRENT_BINARY_DIR}/${PACKAGE_NAME}Config.cmake
COPYONLY)
# install QSkinnyConfig.cmake and QSkinnyConfigVersion.cmake
# file to lib/cmake/QSkinny directory
install(
FILES
${CMAKE_CURRENT_BINARY_DIR}/${PACKAGE_NAME}Config.cmake
${CMAKE_CURRENT_BINARY_DIR}/${PACKAGE_NAME}ConfigVersion.cmake
DESTINATION
${PACKAGE_LOCATION}
COMPONENT
Devel)
# Build other libraries
if(BUILD_QML_EXPORT)
add_subdirectory(qmlexport)
endif()

View File

@ -1,9 +0,0 @@
Copyright (C) 2016 Uwe Rathmann
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

21
LICENSES Normal file
View File

@ -0,0 +1,21 @@
Project: QSkinny
Homepage: https://github.com/uwerat/qskinny
Maintainer: Uwe Rathmann ( uwe@qskinny.org )
SPDX-License-Identifier: BSD-3-Clause
Copyright (C) The authors
3rdparty code:
a) HCT color system
Code: https://github.com/material-foundation/material-color-utilities
SPDX-License-Identifier: Apache License 2.0
Copyright (C) 2021 Google LLC
b) Cassowary constraint solving algorithm
Code: https://github.com/nucleic/kiwi
SPDX-License-Identifier: BSD 3-Clause "New" or "Revised" License
Copyright (c) 2013, Nucleic Development Team

View File

@ -22,26 +22,18 @@ The code already provides a solid fundament for an automotive GUI with
currently ~300K lines of pure C++ code. As expected it results
in a good startup performance and a low memory footprint.
Nontheless QSkinny is lacking in areas like documentation or appealing
default skins. The QML API has not been completed after reaching a
proof of concept state. Furthermore the current selection of the implemented
controls is limited to the needs of the driving projects.
Nontheless QSkinny is lacking in areas like documentation.
The QML API has not been completed after reaching a proof of concept state.
QSkinny is supposed to run on all platforms being supported by Qt/Quick.
But so far only Linux is actively tested.
It might support all versions Qt >= 5.15, but you can rely on:
It might support other versions of Qt, but you can rely on:
- Qt 5.15
- current long term supported ( LTS ) version of Qt
- current long term supported ( LTS ) version of Qt ( at the moment Qt 6.5.x )
- current version of Qt
On debian bullseye these packages need to be installed: `build-essential
qt-qmake qtbase5-dev qtbase5-private-dev qtdeclarative5-dev
qtdeclarative5-private-dev libqt5svg5-dev`.
> Optional: When enabling the `hunspell` feature the following package needs to be installed: `libhunspell-dev`
> Optional: When enabling the `pinyin` feature the following package needs to be installed: `libimepinyin-dev`
How to build, install and use QSkinny is described in this
[tutorial](doc/tutorials/03-writing-your-first-application.asciidoc).
If you want to know more about QSkinny - or even like to give it a specific
direction - please contact support@qskinny.org.

View File

@ -0,0 +1,3 @@
include("${CMAKE_CURRENT_LIST_DIR}/QSkinnyTargets.cmake")
include("${CMAKE_CURRENT_LIST_DIR}/QSkinnyTools.cmake" OPTIONAL)
include("${CMAKE_CURRENT_LIST_DIR}/QSkinnyQmlExportTargets.cmake" OPTIONAL)

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################
@ -7,6 +7,10 @@ function(qsk_add_executable target)
if(QT_VERSION_MAJOR VERSION_GREATER_EQUAL 6)
qt6_add_executable(${ARGV})
# we manually export our APIs to QML - might change in the future
set_target_properties(${target} PROPERTIES
QT_QML_MODULE_NO_IMPORT_SCAN 1)
else()
add_executable(${ARGV})
endif()
@ -65,7 +69,7 @@ function(qsk_add_plugin target TYPE CLASS_NAME)
set_target_properties( ${target} PROPERTIES
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/plugins/${TYPE})
install(TARGETS ${target} DESTINATION "plugins/${TYPE}" )
install(TARGETS ${target} DESTINATION "${QSK_INSTALL_LIBS}/plugins/${TYPE}" )
set_target_properties(${target} PROPERTIES
INSTALL_RPATH "\${ORIGIN}/../../lib" )
@ -99,3 +103,19 @@ function(qsk_add_example target)
target_include_directories(${target} PRIVATE ${CMAKE_CURRENT_LIST_DIR})
endfunction()
function(qsk_add_shaders target)
cmake_parse_arguments( arg "" "" "FILES" ${ARGN} )
# assuming that OUTPUTS is not set in ARGV
foreach( file IN LISTS arg_FILES )
get_filename_component(qsbname "${file}" NAME)
string(REPLACE "-vulkan" "" qsbname "${qsbname}" )
list(APPEND outfiles "${qsbname}.qsb")
endforeach()
qt6_add_shaders( ${target} "qskshaders" BATCHABLE PRECOMPILE QUIET
PREFIX "/qskinny/shaders" ${ARGV} OUTPUTS ${outfiles} )
endfunction()

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################
@ -118,6 +118,7 @@ macro(qsk_initialize_build_flags)
add_compile_options( -Wall -Wextra )
else()
# add_compile_options(/W4 /WX)
add_compile_options(/MP)
endif()
endmacro()

View File

@ -1,17 +1,19 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################
macro(qsk_setup_Qt)
# Often users have several Qt installations on their system and
# need to be able to explicitly the one to be used. Let's see if
# standard cmake features are good enough or if we need to introduce
# something sort of additional option. TODO ...
# relying on cmake heuristics to select a specific Qt version is no good idea.
# using -DCMAKE_PREFIX_PATH="..." is highly recommended
find_package(QT "5.15" NAMES Qt6 Qt5 REQUIRED COMPONENTS Quick)
if(QT_VERSION_MAJOR VERSION_GREATER_EQUAL 6)
# we need the qsb tool for Qt6
find_package(Qt6 REQUIRED COMPONENTS ShaderTools)
endif()
if ( QT_FOUND )
# Would like to have a status message about where the Qt installation

View File

@ -10,22 +10,40 @@ layout: docs
=== Building the QSkinny repository
In this chapter we will write a simple QSkinny application on Linux from scratch.
As a prerequisite, a recent Qt version (>= 5.6) should be available and the directory of
its `qmake` binary in the current `$PATH`. On debian bullseye we need to install
these packages `build-essential qt-qmake qtbase5-dev qtbase5-private-dev
qtdeclarative5-dev qtdeclarative5-private-dev libqt5svg5-dev`.
In this chapter we will write a simple QSkinny application on Linux from scratch in C++ with Qt6.
As a prerequisite, a supported Qt6 version should be available.
On debian bullseye we need to install these packages
`build-essential cmake qtbase6-dev qtbase6-private-dev qtdeclarative6-dev qtdeclarative6-private-dev libqt6svg-dev qt6-shadertools`.
Optional packages for the virtual keyboard are `libhunspell-dev libimepinyin-dev`
Then we can build and install QSkinny to `/opt/qskinny` with the following commands:
[source,xml]
[source,shell]
....
cd /home/user/dev/
git clone https://github.com/uwerat/qskinny.git
cd qskinny
PREFIX=/opt/qskinny qmake -r
make
sudo make install
$ git clone https://github.com/uwerat/qskinny.git # clone
$ cd qskinny
$ mkdir build && cd build
$ cmake ..
$ cmake --build .
$ sudo cmake --install . --prefix "/opt/qskinny"
....
Considering that you want to use a specific Qt version that is installed below "/path/to/qt"
you have 2 options:
[source,shell]
....
$ cmake .. -DCMAKE_PREFIX_PATH=/path/to/qt
....
or
[source,shell]
....
$ /path/to/qt/bin/qt-cmake ..
....
=== Compiling our first app
@ -50,52 +68,62 @@ int main( int argc, char* argv[] )
....
For now this will just create an empty window (the `QskWindow`) without any controls.
Next, we need to create a `myapp.pro` file in our `myapp` directory.
Next, we need to create a `CMakeLists.txt` file in our `myapp` directory.
.myapp.pro
[source,xml]
.CMakeLists.txt
[source,cmake]
....
TEMPLATE = app
TARGET = myapp
cmake_minimum_required(VERSION 3.27)
QT *= quick
project(myapp
VERSION 1.0.0
LANGUAGES CXX)
QSK_ROOT=/opt/qskinny
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
INCLUDEPATH += $${QSK_ROOT}/include
LIBS += -L$${QSK_ROOT}/lib -lqskinny
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)
QMAKE_RPATHDIR *= $${QSK_ROOT}/lib
find_package(Qt6 REQUIRED COMPONENTS Quick)
find_package(QSkinny REQUIRED)
SOURCES += \
main.cpp
add_executable(myapp
src/main.cpp)
target_link_libraries(myapp PRIVATE
Qt6::Quick
Qsk::QSkinny)
....
Now we can compile our app:
[source,xml]
[source,shell]
....
cd myapp
qmake
make
$ cd myapp
$ mkdir build && cd build
$ cmake ../ && make
....
When running myapp it needs to find the skin plugins. Setting QT_PLUGIN_PATH is one
option ( see https://doc.qt.io/qt-5/deployment-plugins.html ):
option ( see https://doc.qt.io/qt/deployment-plugins.html ):
[source,xml]
[source,shell]
....
QT_PLUGIN_PATH=/opt/qskinny/plugins ./myapp
$ QT_PLUGIN_PATH=/opt/qskinny/plugins ./myapp
....
This should show just an empty window.
=== Adding UI controls
Now that we have our app running, we can add some UI controls to it by extending the `main.cpp` file we created earlier. We will add some additional include directives, and then create a horizontal layout containing two push buttons. The layout with the two buttons will be shown in the window. Below is the complete updated source file:
Now that we have our app running, we can add some UI controls to it by extending the `main.cpp` file we created earlier.
We will add some additional include directives, and then create a horizontal layout containing two push buttons.
The layout with the two buttons will be shown in the window. Below is the complete updated source file:
.main.cpp
[source]
[source, cpp]
....
#include <QskWindow.h>
#include <QskLinearBox.h>
@ -107,9 +135,17 @@ int main( int argc, char* argv[] )
{
QGuiApplication app( argc, argv );
auto* horizontalBox = new QskLinearBox( Qt::Horizontal );
auto* button1 = new QskPushButton( "button 1", horizontalBox );
auto* button2 = new QskPushButton( "button 2", horizontalBox );
auto box = new QskLinearBox( Qt::Horizontal );
/*
some design systems work with transparencies ( f.e Fluent2 )
and we need to have a control providing a solid base color
as bottom layer.
*/
box->setPanel( true );
(void) new QskPushButton( "Button 1", box );
(void) new QskPushButton( "Button 2", box );
QskWindow window;
window.addItem( horizontalBox );

View File

@ -18,7 +18,16 @@ When using a QSkinny control, all the methods exposed as either properties,
slots or invokables can be used in QML. For example, the QSkinny control
`QskLinearBox` defines the following properties:
[source]
.CMakeLists.txt
[source,cmake]
....
target_link_libraries(myapp PRIVATE
...
Qsk::QmlExport)
...
....
[source,cpp]
....
class QSK_EXPORT QskLinearBox : public QskIndexedLayoutBox
{

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,9 +1,8 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/
#include "QskLinearBox.h"
#include "label/LabelPage.h"
#include "progressbar/ProgressBarPage.h"
#include "inputs/InputPage.h"
@ -16,6 +15,7 @@
#include <SkinnyShapeProvider.h>
#include <SkinnyNamespace.h>
#include "QskLinearBox.h"
#include <QskMainView.h>
#include <QskFocusIndicator.h>
#include <QskObjectCounter.h>

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,3 +1,8 @@
/******************************************************************************
* Copyright (C) 2021 Edelhirsch Software GmbH
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/
#pragma once
#include <QskControl.h>

View File

@ -0,0 +1,2 @@
build
iotdashboard

View File

@ -0,0 +1,47 @@
cmake_minimum_required(VERSION 3.18)
project(iotdashboard_smoketest)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC OFF)
set(CMAKE_GLOBAL_AUTOGEN_TARGET OFF)
find_package(QSkinny REQUIRED)
# TODO we don't delivery the qsk macros
function(qsk_add_executable target)
if(QT_VERSION_MAJOR VERSION_GREATER_EQUAL 6)
qt6_add_executable(${ARGV})
else()
add_executable(${ARGV})
endif()
endfunction()
# TODO we don't delivery the qsk macros
function(qsk_add_example target)
cmake_parse_arguments(PARSE_ARGV 1 arg "MANUAL_FINALIZATION" "" "")
add_executable(${target} WIN32 MACOSX_BUNDLE ${arg_UNPARSED_ARGUMENTS} )
target_link_libraries(${target} PRIVATE Qsk::QSkinny )
target_include_directories(${target} PRIVATE ${CMAKE_CURRENT_LIST_DIR})
endfunction()
find_package(Qt6 COMPONENTS Core QUIET)
if (NOT Qt6_FOUND)
find_package(Qt5 5.15 REQUIRED COMPONENTS Core Gui OpenGL Quick Svg Widgets)
find_package(Qt5 5.15 OPTIONAL_COMPONENTS QuickWidgets WebEngine WebEngineCore)
function(qt_add_executable)
add_executable(${ARGV})
endfunction(qt_add_executable)
else()
find_package(Qt6 REQUIRED COMPONENTS Core Gui OpenGL Quick QuickWidgets Svg Widgets)
find_package(Qt6 OPTIONAL_COMPONENTS QuickWidgets WebEngineCore WebEngineQuick)
endif()
add_subdirectory(../iotdashboard ${CMAKE_CURRENT_BINARY_DIR}/../iotdashboard)
# TODO we don't delivery the support library
get_target_property(iotdashboard_COMPILE_DEFINITIONS iotdashboard COMPILE_DEFINITIONS)
list(FILTER iotdashboard_COMPILE_DEFINITIONS EXCLUDE REGEX [[^USE_SHORTCUTS=1$]])
set_property(TARGET iotdashboard PROPERTY COMPILE_DEFINITIONS ${iotdashboard_COMPILE_DEFINITIONS})

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################
@ -19,8 +19,8 @@ if(ENABLE_PINYIN)
qsk_setup_Pinyin()
list(APPEND SOURCES
${CMAKE_SOURCE_DIR}/src/inputpanel/QskPinyinTextPredictor.h
${CMAKE_SOURCE_DIR}/src/inputpanel/QskPinyinTextPredictor.cpp
${QSK_SOURCE_DIR}/src/inputpanel/QskPinyinTextPredictor.h
${QSK_SOURCE_DIR}/src/inputpanel/QskPinyinTextPredictor.cpp
)
endif()
@ -28,8 +28,8 @@ if(ENABLE_HUNSPELL)
qsk_setup_Hunspell()
list(APPEND SOURCES
${CMAKE_SOURCE_DIR}/src/inputpanel/QskHunspellTextPredictor.h
${CMAKE_SOURCE_DIR}/src/inputpanel/QskHunspellTextPredictor.cpp
${QSK_SOURCE_DIR}/src/inputpanel/QskHunspellTextPredictor.h
${QSK_SOURCE_DIR}/src/inputpanel/QskHunspellTextPredictor.cpp
)
endif()

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# SPDX-License-Identifier: BSD-3-Clause
############################################################################

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
############################################################################
# QSkinny - Copyright (C) 2016 Uwe Rathmann
# QSkinny - Copyright (C) The authors
# This file may be used under the terms of the 3-clause BSD License
############################################################################

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

View File

@ -1,5 +1,5 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* QSkinny - Copyright (C) The authors
* SPDX-License-Identifier: BSD-3-Clause
*****************************************************************************/

Some files were not shown because too many files have changed in this diff Show More