2019-09-04 06:59:43 +02:00
|
|
|
/******************************************************************************
|
|
|
|
* QSkinny - Copyright (C) 2016 Uwe Rathmann
|
|
|
|
* This file may be used under the terms of the QSkinny License, Version 1.0
|
|
|
|
*****************************************************************************/
|
|
|
|
|
|
|
|
#ifndef QSK_QUICK_ITEM_PRIVATE_H
|
|
|
|
#define QSK_QUICK_ITEM_PRIVATE_H
|
|
|
|
|
|
|
|
#include "QskGlobal.h"
|
|
|
|
#include "QskQuickItem.h"
|
|
|
|
|
|
|
|
QSK_QT_PRIVATE_BEGIN
|
|
|
|
#include <private/qquickitem_p.h>
|
|
|
|
QSK_QT_PRIVATE_END
|
|
|
|
|
|
|
|
class QskQuickItemPrivate : public QQuickItemPrivate
|
|
|
|
{
|
|
|
|
using Inherited = QQuickItemPrivate;
|
|
|
|
|
|
|
|
protected:
|
|
|
|
QskQuickItemPrivate();
|
|
|
|
~QskQuickItemPrivate() override;
|
|
|
|
|
|
|
|
public:
|
2021-02-09 08:13:20 +01:00
|
|
|
void applyUpdateFlags( QskQuickItem::UpdateFlags );
|
2019-09-04 06:59:43 +02:00
|
|
|
|
|
|
|
protected:
|
2019-09-04 08:08:13 +02:00
|
|
|
virtual void layoutConstraintChanged();
|
2019-09-04 06:59:43 +02:00
|
|
|
virtual void implicitSizeChanged();
|
|
|
|
|
|
|
|
private:
|
2021-02-24 13:31:03 +01:00
|
|
|
|
2019-09-04 06:59:43 +02:00
|
|
|
void cleanupNodes();
|
|
|
|
void mirrorChange() override;
|
|
|
|
|
|
|
|
qreal getImplicitWidth() const override final;
|
|
|
|
qreal getImplicitHeight() const override final;
|
|
|
|
|
|
|
|
void implicitWidthChanged() override final;
|
|
|
|
void implicitHeightChanged() override final;
|
|
|
|
|
|
|
|
void updateImplicitSize( bool doNotify );
|
|
|
|
|
|
|
|
void setImplicitSize( qreal width, qreal height, bool doNotify );
|
2019-09-04 08:08:13 +02:00
|
|
|
virtual QSizeF implicitSizeHint() const = 0;
|
2019-09-04 06:59:43 +02:00
|
|
|
|
|
|
|
private:
|
|
|
|
Q_DECLARE_PUBLIC( QskQuickItem )
|
|
|
|
|
2021-02-09 08:13:20 +01:00
|
|
|
quint8 updateFlags;
|
|
|
|
quint8 updateFlagsMask;
|
2019-09-04 06:59:43 +02:00
|
|
|
|
|
|
|
bool polishOnResize : 1;
|
|
|
|
|
|
|
|
bool blockedPolish : 1;
|
|
|
|
bool blockedImplicitSize : 1;
|
|
|
|
bool clearPreviousNodes : 1;
|
|
|
|
|
2021-02-01 10:09:37 +01:00
|
|
|
bool initiallyPainted : 1;
|
2019-09-04 06:59:43 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|