Kirigami::Platform::PlatformThemeChangeTracker
#include <platformtheme.h>
Public Types | |
enum class | PropertyChange : uint8_t { None = 0 , ColorSet = 1 << 0 , ColorGroup = 1 << 1 , Color = 1 << 2 , Palette = 1 << 3 , Font = 1 << 4 , Data = 1 << 5 , All = ColorSet | ColorGroup | Color | Palette | Font | Data } |
typedef QFlags< PropertyChange > | PropertyChanges |
Public Member Functions | |
PlatformThemeChangeTracker (PlatformTheme *theme, PropertyChanges changes=PropertyChange::None) | |
void | markDirty (PropertyChanges changes) |
Detailed Description
A class that tracks changes to PlatformTheme properties and emits signals at the right moment.
This should be used by PlatformTheme implementations to ensure that multiple changes to a PlatformTheme's properties do not emit multiple change signals, instead batching all of them into a single signal emission. This then ensures things making use of PlatformTheme aren't needlessly redrawn or redrawn in a partially changed state.
- Since
- 6.7
Definition at line 386 of file platformtheme.h.
Member Typedef Documentation
◆ PropertyChanges
Definition at line 402 of file platformtheme.h.
Member Enumeration Documentation
◆ PropertyChange
|
strong |
Flags used to indicate changes made to certain properties.
Definition at line 392 of file platformtheme.h.
Constructor & Destructor Documentation
◆ PlatformThemeChangeTracker()
Kirigami::Platform::PlatformThemeChangeTracker::PlatformThemeChangeTracker | ( | PlatformTheme * | theme, |
PropertyChanges | changes = PropertyChange::None ) |
Definition at line 1048 of file platformtheme.cpp.
◆ ~PlatformThemeChangeTracker()
|
noexcept |
Definition at line 1062 of file platformtheme.cpp.
Member Function Documentation
◆ markDirty()
void Kirigami::Platform::PlatformThemeChangeTracker::markDirty | ( | PropertyChanges | changes | ) |
Definition at line 1075 of file platformtheme.cpp.
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri Nov 22 2024 12:05:44 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.