A lightweight framework on top of the Qt scene graph and only few classes from Qt/Quick. It is usable from C++ and/or QML.
Go to file
Uwe Rathmann e6f0088ae4 All box subcontrols are displayd with vertex lists instead of
textures
    now. Implementation is almost complete beside of the not yet done Qt
    antialiasing mode. Not all sort of linear gradients ( see
    QLinearGradients ) are implemented - needs 1-2 days more.
    The aspect flags for box primitives have been substantially changed
from
    too atomic to more strutured units.
    The skins are currently incomplete - will be fixed later.
2017-10-17 17:34:00 +02:00
doc rcc: Use the right binary when invoking manually (#35) 2017-07-26 13:18:01 +02:00
examples All box subcontrols are displayd with vertex lists instead of 2017-10-17 17:34:00 +02:00
inputcontext compiler warning fixed 2017-08-31 12:36:10 +02:00
playground enabling all shortcuts for the inputpanel example 2017-09-06 10:20:22 +02:00
src All box subcontrols are displayd with vertex lists instead of 2017-10-17 17:34:00 +02:00
support All box subcontrols are displayd with vertex lists instead of 2017-10-17 17:34:00 +02:00
tools initial commit 2017-07-21 18:21:34 +02:00
.gitignore playing with the inputpanel example to get the virtual keyboard running 2017-07-28 13:06:59 +02:00
COPYING initial commit 2017-07-21 18:21:34 +02:00
README.md README changed 2017-07-30 14:31:28 +02:00
TODO initial commit 2017-07-21 18:21:34 +02:00
qskconfig.pri bad gcc option removed 2017-09-12 06:49:40 +02:00
qskinny.pro QskLineEdit/QskImage moved to playground 2017-07-24 07:48:36 +02:00

README.md

QSkinny

The (Q)Skinny library is a framework built on top of the Qt scene graph and very few core classes from Qt/Quick. It offers a set of lightweight controls, that can be used from C++ and/or QML.

Doing the implementation in C++ allows to make use of the "scene graph" classes. Building controls from scene graph nodes allows for a lighter implementation than found with stacking "heavier" objects like QObject or QQuickItem. Offering a full featured C++ API allows the application code to benefit from following the same strategies.

Being "skinny" also means a design that separates concerns between the API and logic of the controls themselves, the styling of these controls, and the delegated rendering of the controls to the screen.

The current selection of implemented controls is driven by the needs of specific projects and therefore may feel a bit random. Conceptually, though, any type of control fits into QSkinny, as long as it is usable from C++ (as opposed to only QML).

This is a screenshot of a sample automotive UI (see examples/automotive):

Automotive screenshot