Kirigami::Platform::PlatformThemeChangeTracker

Search for usage in LXR

Kirigami::Platform::PlatformThemeChangeTracker Class Reference

#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< PropertyChangePropertyChanges
 

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

Member Enumeration Documentation

◆ PropertyChange

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 1049 of file platformtheme.cpp.

◆ ~PlatformThemeChangeTracker()

Kirigami::Platform::PlatformThemeChangeTracker::~PlatformThemeChangeTracker ( )
noexcept

Definition at line 1063 of file platformtheme.cpp.

Member Function Documentation

◆ markDirty()

void Kirigami::Platform::PlatformThemeChangeTracker::markDirty ( PropertyChanges changes)

Definition at line 1076 of file platformtheme.cpp.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Sat Dec 21 2024 16:56:52 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.