/*! \mainpage Introduction The (Q)Skinny library contains a set of lightweight Qt Quick Controls. It is implemented to be 100% usable in C++, but can be used from C++ and/or QML application code. Being "skinny", the framework is intended to be both lightweight and skinnable. The framework 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. @dot digraph skinny { table [ shape=record, label="{ QSkinny: key functionality and classes | { { Controls | API, logic and layout of UI } | { Rendering | Delegation of rendering commands } | { Styling | Visual configuration } } }"]; QskControl [ URL="\ref QskControl"] QskLayout [ URL="\ref QskLayout"] QskSkinlet [ URL="\ref QskSkinlet"] QskGraphic [ URL="\ref QskGraphic"] QskSkin [ URL="\ref QskSkin"] QskSkinnable [ URL="\ref QskSkinnable"] table:Controls:s -> QskControl table:Controls:s -> QskLayout table:Rendering:s -> QskSkinlet table:Rendering:s -> QskGraphic table:Styling:s -> QskSkin table:Styling:s -> QskSkinnable } @enddot Besides establishing a more complete C++ API for Qt Quick application development, the QSkinny project offers: - Special attention to resource requirements (i.e. memory consumption and start-up performance), with a number of \ref qskoptimizations "optimizations" enabled by default - A \ref qsklayouts "layout system" comparable to the one available for \ref QWidget "Qt Widgets" - A way to \ref qskskinning "skin" (theme/style) applications entirely from C++, including built-in support for CSS-like inheritance and \ref qskanimations "animated transitions" - Better support for \ref qskvectorgraphics "vector image formats" to aid in scalable UI creation Doing the implementation in C++ allows to make use of the \ref qsknodes "scene graph" classes. Building controls from scene graph nodes allows for a lighter implementation than found with stacking "heavier" objects like QObject or QQuickItem. \note 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). \section license License QSkinny is distributed under the terms of the QSkinny license. \section platforms Platforms QSkinny 0.0.1 might be source code compatible in all environments where you find Qt >= 5.6. Due to its use of private Qt headers, it might be necessary to recompile QSkinny for different Qt versions. */