Magnum::Ui::DarkTheme class new in Git master

Theme for builtin widgets based on the m.css dark theme.

An instance of this class is meant to be passed to the UserInterfaceGL constructor, to UserInterfaceGL::create(), tryCreate() or setTheme(). See the AbstractUserInterface introduction docs for a step-by-step guide for setting up an user interface.

Theme animations

By default the theme is created without any animations to make the initial UI setup easier. Once the application is set up for animations, you can pass Feature::Animations to the constructor to enable fade out animations in certain style transitions and an animated cursor in text editing fields. In comparison, for a distraction-less behavior, Feature::EssentialAnimations is just the text editing cursor alone, blinking without any smooth transition.

Base classes

class AbstractTheme new in Git master
Base for UserInterface themes.

Public types

enum class Feature: UnsignedByte { EssentialAnimations = 1 << 0, Animations = EssentialAnimations|(1 << 1) }
Theme feature.
using Features = Containers::EnumSet<Feature>
Theme features.

Constructors, destructors, conversion operators

DarkTheme(Features features = {}) explicit
Constructor.

Enum documentation

enum class Magnum::Ui::DarkTheme::Feature: UnsignedByte

Theme feature.

Enumerators
EssentialAnimations

Enable just essential animations, which is currently a blinking cursor for text editing. Subset of Feature::Animations.

Note that the application needs to be set up for animations in order to have them played at all. Without the application setup the animations will either forever stay in a scheduled state, making various UI operations feel stuck, or they'll be always treated as already finished, causing no visual difference compared to this flag not enabled.

Animations

Enable all animations, which include fade out on pointer out, release and blur, as well as an animated text editing cursor. Superset of Feature::EssentialAnimations.

Note that the application needs to be set up for animations in order to have them played at all. Without the application setup the animations will either forever stay in a scheduled state, making various UI operations feel stuck, or they'll be always treated as already finished, causing no visual difference compared to this flag not enabled.

Typedef documentation

typedef Containers::EnumSet<Feature> Magnum::Ui::DarkTheme::Features

Theme features.

Function documentation

Magnum::Ui::DarkTheme::DarkTheme(Features features = {}) explicit

Constructor.

Parameters
features Theme features to enable

Debug& operator<<(Debug& debug, DarkTheme::Feature value) new in Git master

Debug output operator.