aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@qt.io>2018-04-17 13:58:41 +0200
committerJ-P Nurmi <jpnurmi@qt.io>2018-04-18 13:56:58 +0000
commit03c437995dae0c840dedcb2234104e33b9a72e90 (patch)
tree8c0a4c9b5c3c5f45cb90541d9c28ccee99ddfe53
parent00664e8b59af37ab741ba2ae5674354a9a25e6b2 (diff)
Inherit QQuickPopupItem from QQuickPage
Change-Id: I574efd6c98680e247012f3e141d7d8fc8b40e37f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
-rw-r--r--src/quicktemplates2/qquickdialog.cpp56
-rw-r--r--src/quicktemplates2/qquickdialog_p.h4
-rw-r--r--src/quicktemplates2/qquickdialog_p_p.h3
-rw-r--r--src/quicktemplates2/qquickpopupitem.cpp30
-rw-r--r--src/quicktemplates2/qquickpopupitem_p_p.h5
5 files changed, 32 insertions, 66 deletions
diff --git a/src/quicktemplates2/qquickdialog.cpp b/src/quicktemplates2/qquickdialog.cpp
index cce1ae47..dd0c9946 100644
--- a/src/quicktemplates2/qquickdialog.cpp
+++ b/src/quicktemplates2/qquickdialog.cpp
@@ -183,7 +183,9 @@ QQuickDialog::QQuickDialog(QObject *parent)
: QQuickPopup(*(new QQuickDialogPrivate), parent)
{
Q_D(QQuickDialog);
- d->layout.reset(new QQuickPageLayout(d->popupItem));
+ connect(d->popupItem, &QQuickPopupItem::titleChanged, this, &QQuickDialog::titleChanged);
+ connect(d->popupItem, &QQuickPopupItem::headerChanged, this, &QQuickDialog::headerChanged);
+ connect(d->popupItem, &QQuickPopupItem::footerChanged, this, &QQuickDialog::footerChanged);
}
/*!
@@ -206,18 +208,14 @@ QQuickDialog::QQuickDialog(QObject *parent)
QString QQuickDialog::title() const
{
Q_D(const QQuickDialog);
- return d->title;
+ return d->popupItem->title();
}
void QQuickDialog::setTitle(const QString &title)
{
Q_D(QQuickDialog);
- if (d->title == title)
- return;
-
- d->title = title;
+ d->popupItem->setTitle(title);
setAccessibleName(title);
- emit titleChanged();
}
/*!
@@ -239,14 +237,14 @@ void QQuickDialog::setTitle(const QString &title)
QQuickItem *QQuickDialog::header() const
{
Q_D(const QQuickDialog);
- return d->layout->header();
+ return d->popupItem->header();
}
void QQuickDialog::setHeader(QQuickItem *header)
{
Q_D(QQuickDialog);
- QQuickItem *oldHeader = d->layout->header();
- if (!d->layout->setHeader(header))
+ QQuickItem *oldHeader = d->popupItem->header();
+ if (oldHeader == header)
return;
if (QQuickDialogButtonBox *buttonBox = qobject_cast<QQuickDialogButtonBox *>(oldHeader)) {
@@ -256,6 +254,7 @@ void QQuickDialog::setHeader(QQuickItem *header)
if (d->buttonBox == buttonBox)
d->buttonBox = nullptr;
}
+
if (QQuickDialogButtonBox *buttonBox = qobject_cast<QQuickDialogButtonBox *>(header)) {
connect(buttonBox, &QQuickDialogButtonBox::accepted, this, &QQuickDialog::accept);
connect(buttonBox, &QQuickDialogButtonBox::rejected, this, &QQuickDialog::reject);
@@ -264,9 +263,7 @@ void QQuickDialog::setHeader(QQuickItem *header)
buttonBox->setStandardButtons(d->standardButtons);
}
- if (isComponentComplete())
- d->layout->update();
- emit headerChanged();
+ d->popupItem->setHeader(header);
}
/*!
@@ -288,14 +285,14 @@ void QQuickDialog::setHeader(QQuickItem *header)
QQuickItem *QQuickDialog::footer() const
{
Q_D(const QQuickDialog);
- return d->layout->footer();
+ return d->popupItem->footer();
}
void QQuickDialog::setFooter(QQuickItem *footer)
{
Q_D(QQuickDialog);
- QQuickItem *oldFooter = d->layout->footer();
- if (!d->layout->setFooter(footer))
+ QQuickItem *oldFooter = d->popupItem->footer();
+ if (oldFooter == footer)
return;
if (QQuickDialogButtonBox *buttonBox = qobject_cast<QQuickDialogButtonBox *>(oldFooter)) {
@@ -313,9 +310,7 @@ void QQuickDialog::setFooter(QQuickItem *footer)
buttonBox->setStandardButtons(d->standardButtons);
}
- if (isComponentComplete())
- d->layout->update();
- emit footerChanged();
+ d->popupItem->setFooter(footer);
}
/*!
@@ -457,27 +452,6 @@ void QQuickDialog::done(int result)
emit rejected();
}
-void QQuickDialog::geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry)
-{
- Q_D(QQuickDialog);
- QQuickPopup::geometryChanged(newGeometry, oldGeometry);
- d->layout->update();
-}
-
-void QQuickDialog::paddingChange(const QMarginsF &newPadding, const QMarginsF &oldPadding)
-{
- Q_D(QQuickDialog);
- QQuickPopup::paddingChange(newPadding, oldPadding);
- d->layout->update();
-}
-
-void QQuickDialog::spacingChange(qreal newSpacing, qreal oldSpacing)
-{
- Q_D(QQuickDialog);
- QQuickPopup::spacingChange(newSpacing, oldSpacing);
- d->layout->update();
-}
-
#if QT_CONFIG(accessibility)
QAccessible::Role QQuickDialog::accessibleRole() const
{
@@ -490,7 +464,7 @@ void QQuickDialog::accessibilityActiveChanged(bool active)
QQuickPopup::accessibilityActiveChanged(active);
if (active)
- setAccessibleName(d->title);
+ setAccessibleName(d->popupItem->title());
}
#endif
diff --git a/src/quicktemplates2/qquickdialog_p.h b/src/quicktemplates2/qquickdialog_p.h
index d22685b6..1f410d13 100644
--- a/src/quicktemplates2/qquickdialog_p.h
+++ b/src/quicktemplates2/qquickdialog_p.h
@@ -110,10 +110,6 @@ Q_SIGNALS:
Q_REVISION(3) void resultChanged();
protected:
- void geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry) override;
- void paddingChange(const QMarginsF &newPadding, const QMarginsF &oldPadding) override;
- void spacingChange(qreal newSpacing, qreal oldSpacing) override;
-
#if QT_CONFIG(accessibility)
QAccessible::Role accessibleRole() const override;
void accessibilityActiveChanged(bool active) override;
diff --git a/src/quicktemplates2/qquickdialog_p_p.h b/src/quicktemplates2/qquickdialog_p_p.h
index e26182ac..70128f34 100644
--- a/src/quicktemplates2/qquickdialog_p_p.h
+++ b/src/quicktemplates2/qquickdialog_p_p.h
@@ -50,7 +50,6 @@
#include <QtQuickTemplates2/private/qquickdialog_p.h>
#include <QtQuickTemplates2/private/qquickpopup_p_p.h>
-#include <QtQuickTemplates2/private/qquickpagelayout_p_p.h>
#include <QtGui/qpa/qplatformdialoghelper.h>
QT_BEGIN_NAMESPACE
@@ -75,9 +74,7 @@ public:
void handleClick(QQuickAbstractButton *button);
int result;
- QString title;
QQuickDialogButtonBox *buttonBox;
- QScopedPointer<QQuickPageLayout> layout;
QPlatformDialogHelper::StandardButtons standardButtons;
};
diff --git a/src/quicktemplates2/qquickpopupitem.cpp b/src/quicktemplates2/qquickpopupitem.cpp
index 757fa701..ad9ffe51 100644
--- a/src/quicktemplates2/qquickpopupitem.cpp
+++ b/src/quicktemplates2/qquickpopupitem.cpp
@@ -37,7 +37,7 @@
#include "qquickpopupitem_p_p.h"
#include "qquickapplicationwindow_p.h"
#include "qquickshortcutcontext_p_p.h"
-#include "qquickpane_p_p.h"
+#include "qquickpage_p_p.h"
#include "qquickcontentitem_p.h"
#include "qquickpopup_p_p.h"
#include "qquickdeferredexecute_p_p.h"
@@ -47,7 +47,7 @@
QT_BEGIN_NAMESPACE
-class QQuickPopupItemPrivate : public QQuickPanePrivate
+class QQuickPopupItemPrivate : public QQuickPagePrivate
{
Q_DECLARE_PUBLIC(QQuickPopupItem)
@@ -83,13 +83,13 @@ QQuickPopupItemPrivate::QQuickPopupItemPrivate(QQuickPopup *popup)
void QQuickPopupItemPrivate::implicitWidthChanged()
{
- QQuickPanePrivate::implicitWidthChanged();
+ QQuickPagePrivate::implicitWidthChanged();
emit popup->implicitWidthChanged();
}
void QQuickPopupItemPrivate::implicitHeightChanged()
{
- QQuickPanePrivate::implicitHeightChanged();
+ QQuickPagePrivate::implicitHeightChanged();
emit popup->implicitHeightChanged();
}
@@ -112,7 +112,7 @@ void QQuickPopupItemPrivate::resolvePalette()
QQuickItem *QQuickPopupItemPrivate::getContentItem()
{
Q_Q(QQuickPopupItem);
- if (QQuickItem *item = QQuickPanePrivate::getContentItem())
+ if (QQuickItem *item = QQuickPagePrivate::getContentItem())
return item;
return new QQuickContentItem(popup, q);
@@ -155,7 +155,7 @@ void QQuickPopupItemPrivate::executeBackground(bool complete)
}
QQuickPopupItem::QQuickPopupItem(QQuickPopup *popup)
- : QQuickPane(*(new QQuickPopupItemPrivate(popup)), nullptr)
+ : QQuickPage(*(new QQuickPopupItemPrivate(popup)), nullptr)
{
setParent(popup);
setFlag(ItemIsFocusScope);
@@ -309,35 +309,35 @@ void QQuickPopupItem::wheelEvent(QWheelEvent *event)
void QQuickPopupItem::contentItemChange(QQuickItem *newItem, QQuickItem *oldItem)
{
Q_D(QQuickPopupItem);
- QQuickPane::contentItemChange(newItem, oldItem);
+ QQuickPage::contentItemChange(newItem, oldItem);
d->popup->contentItemChange(newItem, oldItem);
}
void QQuickPopupItem::contentSizeChange(const QSizeF &newSize, const QSizeF &oldSize)
{
Q_D(QQuickPopupItem);
- QQuickPane::contentSizeChange(newSize, oldSize);
+ QQuickPage::contentSizeChange(newSize, oldSize);
d->popup->contentSizeChange(newSize, oldSize);
}
void QQuickPopupItem::fontChange(const QFont &newFont, const QFont &oldFont)
{
Q_D(QQuickPopupItem);
- QQuickPane::fontChange(newFont, oldFont);
+ QQuickPage::fontChange(newFont, oldFont);
d->popup->fontChange(newFont, oldFont);
}
void QQuickPopupItem::geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry)
{
Q_D(QQuickPopupItem);
- QQuickPane::geometryChanged(newGeometry, oldGeometry);
+ QQuickPage::geometryChanged(newGeometry, oldGeometry);
d->popup->geometryChanged(newGeometry, oldGeometry);
}
void QQuickPopupItem::localeChange(const QLocale &newLocale, const QLocale &oldLocale)
{
Q_D(QQuickPopupItem);
- QQuickPane::localeChange(newLocale, oldLocale);
+ QQuickPage::localeChange(newLocale, oldLocale);
d->popup->localeChange(newLocale, oldLocale);
}
@@ -350,21 +350,21 @@ void QQuickPopupItem::mirrorChange()
void QQuickPopupItem::itemChange(ItemChange change, const ItemChangeData &data)
{
Q_D(QQuickPopupItem);
- QQuickPane::itemChange(change, data);
+ QQuickPage::itemChange(change, data);
d->popup->itemChange(change, data);
}
void QQuickPopupItem::paddingChange(const QMarginsF &newPadding, const QMarginsF &oldPadding)
{
Q_D(QQuickPopupItem);
- QQuickPane::paddingChange(newPadding, oldPadding);
+ QQuickPage::paddingChange(newPadding, oldPadding);
d->popup->paddingChange(newPadding, oldPadding);
}
void QQuickPopupItem::paletteChange(const QPalette &newPalette, const QPalette &oldPalette)
{
Q_D(QQuickPopupItem);
- QQuickPane::paletteChange(newPalette, oldPalette);
+ QQuickPage::paletteChange(newPalette, oldPalette);
d->popup->paletteChange(newPalette, oldPalette);
}
@@ -390,7 +390,7 @@ QAccessible::Role QQuickPopupItem::accessibleRole() const
void QQuickPopupItem::accessibilityActiveChanged(bool active)
{
Q_D(const QQuickPopupItem);
- QQuickPane::accessibilityActiveChanged(active);
+ QQuickPage::accessibilityActiveChanged(active);
d->popup->accessibilityActiveChanged(active);
}
#endif
diff --git a/src/quicktemplates2/qquickpopupitem_p_p.h b/src/quicktemplates2/qquickpopupitem_p_p.h
index 736ff0d2..a15aeb17 100644
--- a/src/quicktemplates2/qquickpopupitem_p_p.h
+++ b/src/quicktemplates2/qquickpopupitem_p_p.h
@@ -48,14 +48,13 @@
// We mean it.
//
-#include <QtQuickTemplates2/private/qquickpane_p.h>
+#include <QtQuickTemplates2/private/qquickpage_p.h>
QT_BEGIN_NAMESPACE
class QQuickPopup;
class QQuickPopupItemPrivate;
-
-class QQuickPopupItem : public QQuickPane
+class QQuickPopupItem : public QQuickPage
{
Q_OBJECT