common/QskFunctions.h

Functions

  Name
qreal qskDpiScaled(qreal value)
qreal qskGlobalScaleFactor()
bool qskHasPlatformWindowManagement()
QRect qskPlatformScreenGeometry(const QScreen * screen)
QRect qskAlignedRect(const QRect & outerRect, int width, int height, Qt::Alignment alignment)
QRectF qskAlignedRectF(const QRectF & outerRect, qreal width, qreal height, Qt::Alignment alignment)
QRect qskInnerRect(const QRectF & rect)
QRectF qskInnerRectF(const QRectF & rect)
QRectF qskValidOrEmptyInnerRect(const QRectF & rect, const QMarginsF & margins)
qreal qskHorizontalAdvance(const QFont & font, const QString & text)
qreal qskHorizontalAdvance(const QFontMetricsF & fontMetrics, const QString & text)
QMarginsF qskMargins(const QRectF & rect, const QRectF & innerRect)
bool qskFuzzyCompare(qreal value1, qreal value2)
qreal qskFuzzyFloor(qreal value, qreal stepSize)
qreal qskFuzzyCeil(qreal value, qreal stepSize)

Functions Documentation

function qskDpiScaled

qreal qskDpiScaled(
    qreal value
)

function qskGlobalScaleFactor

qreal qskGlobalScaleFactor()

function qskHasPlatformWindowManagement

bool qskHasPlatformWindowManagement()

function qskPlatformScreenGeometry

QRect qskPlatformScreenGeometry(
    const QScreen * screen
)

function qskAlignedRect

QRect qskAlignedRect(
    const QRect & outerRect,
    int width,
    int height,
    Qt::Alignment alignment
)

function qskAlignedRectF

QRectF qskAlignedRectF(
    const QRectF & outerRect,
    qreal width,
    qreal height,
    Qt::Alignment alignment
)

function qskInnerRect

QRect qskInnerRect(
    const QRectF & rect
)

function qskInnerRectF

QRectF qskInnerRectF(
    const QRectF & rect
)

function qskValidOrEmptyInnerRect

QRectF qskValidOrEmptyInnerRect(
    const QRectF & rect,
    const QMarginsF & margins
)

function qskHorizontalAdvance

qreal qskHorizontalAdvance(
    const QFont & font,
    const QString & text
)

function qskHorizontalAdvance

qreal qskHorizontalAdvance(
    const QFontMetricsF & fontMetrics,
    const QString & text
)

function qskMargins

inline QMarginsF qskMargins(
    const QRectF & rect,
    const QRectF & innerRect
)

function qskFuzzyCompare

inline bool qskFuzzyCompare(
    qreal value1,
    qreal value2
)

function qskFuzzyFloor

qreal qskFuzzyFloor(
    qreal value,
    qreal stepSize
)

function qskFuzzyCeil

qreal qskFuzzyCeil(
    qreal value,
    qreal stepSize
)

Source code

/******************************************************************************
 * QSkinny - Copyright (C) 2016 Uwe Rathmann
 * This file may be used under the terms of the QSkinny License, Version 1.0
 *****************************************************************************/

#ifndef QSK_FUNCTIONS_H
#define QSK_FUNCTIONS_H

#include "QskGlobal.h"

#include <qmargins.h>
#include <qrect.h>

class QScreen;
class QFont;
class QFontMetricsF;
class QString;

QSK_EXPORT qreal qskDpiScaled( qreal value );
QSK_EXPORT qreal qskGlobalScaleFactor();
QSK_EXPORT bool qskHasPlatformWindowManagement();
QSK_EXPORT QRect qskPlatformScreenGeometry( const QScreen* );

QSK_EXPORT QRect qskAlignedRect( const QRect& outerRect,
    int width, int height, Qt::Alignment alignment );

QSK_EXPORT QRectF qskAlignedRectF( const QRectF& outerRect,
    qreal width, qreal height, Qt::Alignment alignment );

QSK_EXPORT QRect qskInnerRect( const QRectF& rect );
QSK_EXPORT QRectF qskInnerRectF( const QRectF& rect );

QSK_EXPORT QRectF qskValidOrEmptyInnerRect(
    const QRectF& rect, const QMarginsF& margins );

QSK_EXPORT qreal qskHorizontalAdvance( const QFont&, const QString& );
QSK_EXPORT qreal qskHorizontalAdvance( const QFontMetricsF&, const QString& );

inline QMarginsF qskMargins( const QRectF& rect, const QRectF& innerRect )
{
    return QMarginsF(
        innerRect.left() - rect.left(),
        innerRect.top() - rect.top(),
        rect.right() - innerRect.right(),
        rect.bottom() - innerRect.bottom() );
}

inline bool qskFuzzyCompare( qreal value1, qreal value2 )
{
    if ( qFuzzyIsNull( value1 ) )
        return qFuzzyIsNull( value2 );

    if ( qFuzzyIsNull( value2 ) )
        return false;

    return qFuzzyCompare( value1, value2 );
}

QSK_EXPORT qreal qskFuzzyFloor( qreal value, qreal stepSize );
QSK_EXPORT qreal qskFuzzyCeil( qreal value, qreal stepSize );

#endif

Updated on 28 July 2023 at 14:02:29 CEST