QSkinny 0.8.0
C++/Qt UI toolkit
|
Controls in QSkinny are designed from the ground up to be skinnable (that is, easily styled/themed). QSkinny includes both a high-level API consisting of skin hints (QskSkinHint) and a low-level API based on C++ delegates, or skinlets (QskSkinlet). In fact, the two approaches are used in tandem to provide custom skins (QskSkin) to applications.
Inspired by CSS, skin hints consist of basic types (e.g. colors or distances) which are used to describe the rendering of a user interface (i.e., skinnable - QskSkinnable - components). The particular element of the UI affected by this skin hint is described by an aspect (QskAspect). Not unlike CSS selectors, aspects are created by combining a series of flags together. This combination of flags (called an aspect) determines the rendering scope to which the skin hint applies.
More concretely, modifying the look & feel of QskControls can be acheived by:
The default skin in QSkinny is intended to be flexible enough that the most common visual changes can be acheived without subclassing QskSkinlet. That is, they can be styled entirely by setting skin hints for aspects used by the built-in skinlets. For more information about how aspects are used to control rendering in the built-in skinlets, see QskAspect.