controls/QskQuick.h

Functions

  Name
bool qskIsItemComplete(const QQuickItem * item)
bool qskIsAncestorOf(const QQuickItem * item, const QQuickItem * child)
bool qskIsTabFence(const QQuickItem * item)
bool qskIsShortcutScope(const QQuickItem * item)
bool qskIsVisibleTo(const QQuickItem * item, const QQuickItem * ancestor)
bool qskIsVisibleToParent(const QQuickItem * item)
bool qskIsPolishScheduled(const QQuickItem * item)
void qskSetTransparentForPositioner(QQuickItem * item, bool on)
bool qskIsTransparentForPositioner(const QQuickItem * item)
bool qskIsVisibleToLayout(const QQuickItem * item)
QSizeF qskEffectiveSizeHint(const QQuickItem * item, Qt::SizeHint whichHint, const QSizeF & constraint =QSizeF())
QSizeF qskSizeConstraint(const QQuickItem * item, Qt::SizeHint which, const QSizeF & constraint =QSizeF())
QSizeF qskConstrainedItemSize(const QQuickItem * item, const QSizeF & size)
QRectF qskConstrainedItemRect(const QQuickItem * item, const QRectF & rect, Qt::Alignment alignment)
QskSizePolicy qskSizePolicy(const QQuickItem * item)
Qt::Alignment qskLayoutAlignmentHint(const QQuickItem * item)
bool qskRetainSizeWhenHidden(const QQuickItem * item)
QSizeF qskItemSize(const QQuickItem * item)
QRectF qskItemRect(const QQuickItem * item)
QRectF qskItemGeometry(const QQuickItem * item)
void qskSetItemGeometry(QQuickItem * item, const QRectF & rect)
QQuickItem * qskNearestFocusScope(const QQuickItem * item)
void qskForceActiveFocus(QQuickItem * item, Qt::FocusReason reason)
QList< QQuickItem * > qskPaintOrderChildItems(const QQuickItem * item)
void qskUpdateInputMethod(const QQuickItem * item, Qt::InputMethodQueries queries)
void qskInputMethodSetVisible(const QQuickItem * item, bool on)
const QSGNode * qskItemNode(const QQuickItem * item)
const QSGNode * qskPaintNode(const QQuickItem * item)
void qskItemUpdateRecursive(QQuickItem * item)
bool qskGrabMouse(QQuickItem * item)
void qskUngrabMouse(QQuickItem * item)
bool qskIsMouseGrabber(const QQuickItem * item)
void qskSetItemGeometry(QQuickItem * item, qreal x, qreal y, qreal width, qreal height)
template <typename T >
T
qskFindAncestorOf(QQuickItem * item)
template <typename T >
T
qskFindAncestorOf(const QQuickItem * item)
qreal qskHeightForWidth(const QQuickItem * item, Qt::SizeHint which, qreal width)
qreal qskWidthForHeight(const QQuickItem * item, Qt::SizeHint which, qreal height)
QRectF qskConstrainedItemRect(const QQuickItem * item, const QRectF & rect)

Functions Documentation

function qskIsItemComplete

bool qskIsItemComplete(
    const QQuickItem * item
)

function qskIsAncestorOf

bool qskIsAncestorOf(
    const QQuickItem * item,
    const QQuickItem * child
)

function qskIsTabFence

bool qskIsTabFence(
    const QQuickItem * item
)

function qskIsShortcutScope

bool qskIsShortcutScope(
    const QQuickItem * item
)

function qskIsVisibleTo

bool qskIsVisibleTo(
    const QQuickItem * item,
    const QQuickItem * ancestor
)

function qskIsVisibleToParent

bool qskIsVisibleToParent(
    const QQuickItem * item
)

function qskIsPolishScheduled

bool qskIsPolishScheduled(
    const QQuickItem * item
)

function qskSetTransparentForPositioner

void qskSetTransparentForPositioner(
    QQuickItem * item,
    bool on
)

function qskIsTransparentForPositioner

bool qskIsTransparentForPositioner(
    const QQuickItem * item
)

function qskIsVisibleToLayout

bool qskIsVisibleToLayout(
    const QQuickItem * item
)

function qskEffectiveSizeHint

QSizeF qskEffectiveSizeHint(
    const QQuickItem * item,
    Qt::SizeHint whichHint,
    const QSizeF & constraint =QSizeF()
)

function qskSizeConstraint

QSizeF qskSizeConstraint(
    const QQuickItem * item,
    Qt::SizeHint which,
    const QSizeF & constraint =QSizeF()
)

function qskConstrainedItemSize

QSizeF qskConstrainedItemSize(
    const QQuickItem * item,
    const QSizeF & size
)

function qskConstrainedItemRect

QRectF qskConstrainedItemRect(
    const QQuickItem * item,
    const QRectF & rect,
    Qt::Alignment alignment
)

function qskSizePolicy

QskSizePolicy qskSizePolicy(
    const QQuickItem * item
)

function qskLayoutAlignmentHint

Qt::Alignment qskLayoutAlignmentHint(
    const QQuickItem * item
)

function qskRetainSizeWhenHidden

bool qskRetainSizeWhenHidden(
    const QQuickItem * item
)

function qskItemSize

QSizeF qskItemSize(
    const QQuickItem * item
)

function qskItemRect

QRectF qskItemRect(
    const QQuickItem * item
)

function qskItemGeometry

QRectF qskItemGeometry(
    const QQuickItem * item
)

function qskSetItemGeometry

void qskSetItemGeometry(
    QQuickItem * item,
    const QRectF & rect
)

function qskNearestFocusScope

QQuickItem * qskNearestFocusScope(
    const QQuickItem * item
)

function qskForceActiveFocus

void qskForceActiveFocus(
    QQuickItem * item,
    Qt::FocusReason reason
)

function qskPaintOrderChildItems

QList< QQuickItem * > qskPaintOrderChildItems(
    const QQuickItem * item
)

function qskUpdateInputMethod

void qskUpdateInputMethod(
    const QQuickItem * item,
    Qt::InputMethodQueries queries
)

function qskInputMethodSetVisible

void qskInputMethodSetVisible(
    const QQuickItem * item,
    bool on
)

function qskItemNode

const QSGNode * qskItemNode(
    const QQuickItem * item
)

function qskPaintNode

const QSGNode * qskPaintNode(
    const QQuickItem * item
)

function qskItemUpdateRecursive

void qskItemUpdateRecursive(
    QQuickItem * item
)

function qskGrabMouse

bool qskGrabMouse(
    QQuickItem * item
)

function qskUngrabMouse

void qskUngrabMouse(
    QQuickItem * item
)

function qskIsMouseGrabber

bool qskIsMouseGrabber(
    const QQuickItem * item
)

function qskSetItemGeometry

inline void qskSetItemGeometry(
    QQuickItem * item,
    qreal x,
    qreal y,
    qreal width,
    qreal height
)

function qskFindAncestorOf

template <typename T >
inline T qskFindAncestorOf(
    QQuickItem * item
)

function qskFindAncestorOf

template <typename T >
inline T qskFindAncestorOf(
    const QQuickItem * item
)

function qskHeightForWidth

inline qreal qskHeightForWidth(
    const QQuickItem * item,
    Qt::SizeHint which,
    qreal width
)

function qskWidthForHeight

inline qreal qskWidthForHeight(
    const QQuickItem * item,
    Qt::SizeHint which,
    qreal height
)

function qskConstrainedItemRect

inline QRectF qskConstrainedItemRect(
    const QQuickItem * item,
    const QRectF & rect
)

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_QUICK_H
#define QSK_QUICK_H 1

#include "QskGlobal.h"
#include <qnamespace.h>
#include <qquickitem.h>

class QskSizePolicy;

class QQuickItem;
class QSGNode;
class QRectF;
template< typename T > class QList;

/*
    Exporting methods from QQuickItemPrivate, that should be part
    of QQuickItem.
 */

QSK_EXPORT bool qskIsItemComplete( const QQuickItem* );
QSK_EXPORT bool qskIsAncestorOf( const QQuickItem* item, const QQuickItem* child );
QSK_EXPORT bool qskIsTabFence( const QQuickItem* );
QSK_EXPORT bool qskIsShortcutScope( const QQuickItem* );
QSK_EXPORT bool qskIsVisibleTo( const QQuickItem* item, const QQuickItem* ancestor );
QSK_EXPORT bool qskIsVisibleToParent( const QQuickItem* );
QSK_EXPORT bool qskIsPolishScheduled( const QQuickItem* );

QSK_EXPORT void qskSetTransparentForPositioner( QQuickItem*, bool );
QSK_EXPORT bool qskIsTransparentForPositioner( const QQuickItem* );
QSK_EXPORT bool qskIsVisibleToLayout( const QQuickItem* );

QSK_EXPORT QSizeF qskEffectiveSizeHint( const QQuickItem*,
    Qt::SizeHint, const QSizeF& constraint = QSizeF() );

QSK_EXPORT QSizeF qskSizeConstraint( const QQuickItem*,
    Qt::SizeHint, const QSizeF& constraint = QSizeF() );

QSK_EXPORT QSizeF qskConstrainedItemSize( const QQuickItem*, const QSizeF& );
QSK_EXPORT QRectF qskConstrainedItemRect(
    const QQuickItem*, const QRectF&, Qt::Alignment );

QSK_EXPORT QskSizePolicy qskSizePolicy( const QQuickItem* );
QSK_EXPORT Qt::Alignment qskLayoutAlignmentHint( const QQuickItem* );
QSK_EXPORT bool qskRetainSizeWhenHidden( const QQuickItem* );

QSK_EXPORT QSizeF qskItemSize( const QQuickItem* );
QSK_EXPORT QRectF qskItemRect( const QQuickItem* );

QSK_EXPORT QRectF qskItemGeometry( const QQuickItem* );
QSK_EXPORT void qskSetItemGeometry( QQuickItem*, const QRectF& );

QSK_EXPORT QQuickItem* qskNearestFocusScope( const QQuickItem* );
QSK_EXPORT void qskForceActiveFocus( QQuickItem*, Qt::FocusReason );

QSK_EXPORT QList< QQuickItem* > qskPaintOrderChildItems( const QQuickItem* );

QSK_EXPORT void qskUpdateInputMethod( const QQuickItem*, Qt::InputMethodQueries );
QSK_EXPORT void qskInputMethodSetVisible( const QQuickItem*, bool );

QSK_EXPORT const QSGNode* qskItemNode( const QQuickItem* );
QSK_EXPORT const QSGNode* qskPaintNode( const QQuickItem* );

QSK_EXPORT void qskItemUpdateRecursive( QQuickItem* );

QSK_EXPORT bool qskGrabMouse( QQuickItem* );
QSK_EXPORT void qskUngrabMouse( QQuickItem* );
QSK_EXPORT bool qskIsMouseGrabber( const QQuickItem* );

inline void qskSetItemGeometry(
    QQuickItem* item, qreal x, qreal y, qreal width, qreal height )
{
    qskSetItemGeometry( item, QRectF( x, y, width, height ) );
}

template< typename T >
inline T qskFindAncestorOf( QQuickItem* item )
{
    for ( auto it = item; it != nullptr; it = it->parentItem() )
    {
        if ( auto ancestor = qobject_cast< T >( it ) )
            return ancestor;
    }

    return nullptr;
}

template< typename T >
inline T qskFindAncestorOf( const QQuickItem* item )
{
    return qskFindAncestorOf< std::remove_const< T > >(
        const_cast< QQuickItem* >( item ) );
}

inline qreal qskHeightForWidth(
    const QQuickItem* item, Qt::SizeHint which, qreal width )
{
    return qskEffectiveSizeHint(
        item, which, QSizeF( width, -1.0 ) ).height();
}

inline qreal qskWidthForHeight(
    const QQuickItem* item, Qt::SizeHint which, qreal height )
{
    return qskEffectiveSizeHint(
        item, which, QSizeF( -1.0, height ) ).width();
}

inline QRectF qskConstrainedItemRect( const QQuickItem* item, const QRectF& rect )
{
    return qskConstrainedItemRect( item, rect, qskLayoutAlignmentHint( item ) );
}

#endif

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