Kirigami::Units

Search for usage in LXR

Kirigami::Units Class Reference

#include <Kirigami/Units>

Inheritance diagram for Kirigami::Units:

Properties

qreal devicePixelRatio
 
int gridUnit
 
int humanMoment
 
IconSizes iconSizes
 
int largeSpacing
 
int longDuration
 
int maximumInteger
 
int mediumSpacing
 
int shortDuration
 
int smallSpacing
 
int toolTipDelay
 
int veryLongDuration
 
int veryShortDuration
 
- Properties inherited from QObject
 objectName
 

Signals

void devicePixelRatioChanged ()
 
void gridUnitChanged ()
 
void humanMomentChanged ()
 
void largeSpacingChanged ()
 
void longDurationChanged ()
 
void mediumSpacingChanged ()
 
void shortDurationChanged ()
 
void smallSpacingChanged ()
 
void toolTipDelayChanged ()
 
void veryLongDurationChanged ()
 
void veryShortDurationChanged ()
 
void wheelScrollLinesChanged ()
 

Public Member Functions

 Units (QObject *parent=nullptr)
 
int gridUnit () const
 
int humanMoment () const
 
IconSizesiconSizes () const
 
int largeSpacing () const
 
int longDuration () const
 
int maximumInteger () const
 
int mediumSpacing () const
 
void setGridUnit (int size)
 
void setHumanMoment (int duration)
 
void setLargeSpacing (int size)
 
void setLongDuration (int duration)
 
void setMediumSpacing (int size)
 
void setShortDuration (int duration)
 
void setSmallSpacing (int size)
 
void setToolTipDelay (int delay)
 
void setVeryLongDuration (int duration)
 
void setVeryShortDuration (int duration)
 
int shortDuration () const
 
int smallSpacing () const
 
int toolTipDelay () const
 
int veryLongDuration () const
 
int veryShortDuration () const
 
- Public Member Functions inherited from QObject
 QObject (QObject *parent)
 
bool blockSignals (bool block)
 
const QObjectListchildren () const const
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const
 
void deleteLater ()
 
void destroyed (QObject *obj)
 
bool disconnect (const char *signal, const QObject *receiver, const char *method) const const
 
bool disconnect (const QObject *receiver, const char *method) const const
 
void dumpObjectInfo ()
 
void dumpObjectInfo () const const
 
void dumpObjectTree ()
 
void dumpObjectTree () const const
 
QList< QByteArraydynamicPropertyNames () const const
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
findChild (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegExp &regExp, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QString &name, Qt::FindChildOptions options) const const
 
bool inherits (const char *className) const const
 
void installEventFilter (QObject *filterObj)
 
bool isWidgetType () const const
 
bool isWindowType () const const
 
void killTimer (int id)
 
virtual const QMetaObjectmetaObject () const const
 
void moveToThread (QThread *targetThread)
 
QString objectName () const const
 
void objectNameChanged (const QString &objectName)
 
QObjectparent () const const
 
QVariant property (const char *name) const const
 
 Q_CLASSINFO (Name, Value)
 
 Q_DISABLE_COPY (Class)
 
 Q_DISABLE_COPY_MOVE (Class)
 
 Q_DISABLE_MOVE (Class)
 
 Q_EMIT Q_EMIT
 
 Q_ENUM (...)
 
 Q_ENUM_NS (...)
 
 Q_ENUMS (...)
 
 Q_FLAG (...)
 
 Q_FLAG_NS (...)
 
 Q_FLAGS (...)
 
 Q_GADGET Q_GADGET
 
 Q_INTERFACES (...)
 
 Q_INVOKABLE Q_INVOKABLE
 
 Q_NAMESPACE Q_NAMESPACE
 
 Q_NAMESPACE_EXPORT (EXPORT_MACRO)
 
 Q_OBJECT Q_OBJECT
 
 Q_PROPERTY (...)
 
 Q_REVISION Q_REVISION
 
 Q_SET_OBJECT_NAME (Object)
 
 Q_SIGNAL Q_SIGNAL
 
 Q_SIGNALS Q_SIGNALS
 
 Q_SLOT Q_SLOT
 
 Q_SLOTS Q_SLOTS
 
qFindChild (const QObject *obj, const QString &name)
 
QList< T > qFindChildren (const QObject *obj, const QRegExp &regExp)
 
QList< T > qFindChildren (const QObject *obj, const QString &name)
 
qobject_cast (const QObject *object)
 
qobject_cast (QObject *object)
 
 QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT
 
void removeEventFilter (QObject *obj)
 
void setObjectName (const QString &name)
 
void setParent (QObject *parent)
 
bool setProperty (const char *name, const QVariant &value)
 
bool signalsBlocked () const const
 
int startTimer (int interval, Qt::TimerType timerType)
 
int startTimer (std::chrono::milliseconds time, Qt::TimerType timerType)
 
QThreadthread () const const
 

Additional Inherited Members

- Static Public Member Functions inherited from QObject
QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, Functor functor)
 
bool disconnect (const QMetaObject::Connection &connection)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
bool disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method)
 
QString tr (const char *sourceText, const char *disambiguation, int n)
 
QString trUtf8 (const char *sourceText, const char *disambiguation, int n)
 
- Public Attributes inherited from QObject
typedef QObjectList
 
- Protected Member Functions inherited from QObject
virtual void childEvent (QChildEvent *event)
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void customEvent (QEvent *event)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
bool isSignalConnected (const QMetaMethod &signal) const const
 
int receivers (const char *signal) const const
 
QObjectsender () const const
 
int senderSignalIndex () const const
 
virtual void timerEvent (QTimerEvent *event)
 

Detailed Description

A set of values to define semantically sizes and durations.

Definition at line 72 of file units.h.

Property Documentation

◆ devicePixelRatio

qreal Units::devicePixelRatio
read

The ratio between physical and device-independent pixels.

This value does not depend on the \ size of the configured font. If you want to take font sizes into account when scaling elements, use theme.mSize(theme.defaultFont), units.smallSpacing and units.largeSpacing. The devicePixelRatio follows the definition of "device independent pixel" by Microsoft.

Deprecated:
since 5.86. When using Qt's high DPI scaling, all sizes are considered to be device-independent pixels, so this will simply return 1.

Definition at line 134 of file units.h.

◆ gridUnit

int Units::gridUnit
readwrite

The fundamental unit of space that should be used for sizes, expressed in pixels.

Given the screen has an accurate DPI settings, it corresponds to the height of the font's boundingRect.

Definition at line 83 of file units.h.

◆ humanMoment

int Units::humanMoment
readwrite

Time in milliseconds equivalent to the theoretical human moment, which can be used to determine whether how long to wait until the user should be informed of something, or can be used as the limit for how long something should wait before being automatically initiated.

Some examples:

  • When the user types text in a search field, wait no longer than this duration after the user completes typing before starting the search
  • When loading data which would commonly arrive rapidly enough to not require interaction, wait this long before showing a spinner

This might seem an arbitrary number, but given the psychological effect that three seconds seems to be what humans consider a moment (and in the case of waiting for something to happen, a moment is that time when you think "this is taking a bit long, isn't it?"), the idea is to postpone for just before such a conceptual moment. The reason for the two seconds, rather than three, is to function as a middle ground: Not long enough that the user would think that something has taken too long, for also not so fast as to happen too soon.

See also https://www.psychologytoday.com/blog/all-about-addiction/201101/tick-tock-tick-hugs-and-life-in-3-second-intervals (the actual paper is hidden behind an academic paywall and consequently not readily available to us, so the source will have to be the blog entry above)

Note
This should not be used as an animation duration, as it is deliberately not scaled according to the animation settings. This is specifically for determining when something has taken too long and the user should expect some kind of feedback. See veryShortDuration, shortDuration, longDuration, and veryLongDuration for animation duration choices.
Since
KDE Frameworks 5.81
org.kde.kirigami 2.16

Definition at line 194 of file units.h.

◆ iconSizes

IconSizes * Units::iconSizes
read

units.iconSizes provides access to platform-dependent icon sizing

The icon sizes provided are normalized for different DPI, so icons will scale depending on the DPI.

  • sizeForLabels (the largest icon size that fits within fontMetrics.height)
    Since
    KDE Frameworks 5.80
    org.kde.kirigami 2.16
  • small
  • smallMedium
  • medium
  • large
  • huge
  • enormous

Definition at line 99 of file units.h.

◆ largeSpacing

int Units::largeSpacing
readwrite

This property holds the amount of spacing that should be used between bigger UI elements, such as a large icon and a heading in a card.

Internally, this size depends on the size of the default font as rendered on the screen, so it takes user-configured font size and DPI into account.

Definition at line 123 of file units.h.

◆ longDuration

int Units::longDuration
readwrite

units.longDuration should be used for longer, screen-covering animations, for opening and closing of dialogs and other "not too small" animations

Definition at line 146 of file units.h.

◆ mediumSpacing

int Units::mediumSpacing
readwrite

This property holds the amount of spacing that should be used between medium UI elements, such as buttons and text fields in a toolbar.

Internally, this size depends on the size of the default font as rendered on the screen, so it takes user-configured font size and DPI into account.

Definition at line 115 of file units.h.

◆ shortDuration

int Units::shortDuration
readwrite

units.shortDuration should be used for short animations, such as accentuating a UI event, hover events, etc.

Definition at line 152 of file units.h.

◆ smallSpacing

int Units::smallSpacing
readwrite

This property holds the amount of spacing that should be used between smaller UI elements, such as a small icon and a label in a button.

Internally, this size depends on the size of the default font as rendered on the screen, so it takes user-configured font size and DPI into account.

Definition at line 107 of file units.h.

◆ toolTipDelay

int Units::toolTipDelay
readwrite

time in ms by which the display of tooltips will be delayed.

See also
ToolTip.delay property

Definition at line 201 of file units.h.

◆ veryLongDuration

int Units::veryLongDuration
readwrite

units.veryLongDuration should be used for specialty animations that benefit from being even longer than longDuration.

Definition at line 140 of file units.h.

◆ veryShortDuration

int Units::veryShortDuration
readwrite

units.veryShortDuration should be used for elements that should have a hint of smoothness, but otherwise animate near instantly.

Definition at line 158 of file units.h.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Mon May 8 2023 04:07:14 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.