aboutsummaryrefslogtreecommitdiffstats
path: root/src/quicktemplates2/qquickpopupitem.cpp
diff options
context:
space:
mode:
authorMitch Curtis <mitch.curtis@qt.io>2021-08-12 14:39:51 +0200
committerMitch Curtis <mitch.curtis@qt.io>2021-08-16 12:52:59 +0200
commit809339d1484cf556512534367b8170bc26baf072 (patch)
tree12871313b658f36d058b5ef25af1e247e9c46ce9 /src/quicktemplates2/qquickpopupitem.cpp
parentb01b4f00eae8022c6a97d90f54dac395144ae095 (diff)
Remove qtquickcontrols2 sources and explain where they wentHEADdev
Now that qtquickcontrols2 has been merged into qtdeclarative, we should make it obvious that this repo should no longer be used, by preventing it from being built. Task-number: QTBUG-95173 Pick-to: 6.2 Change-Id: I95bd6a214f3d75a865ab163ee0a1f9ffbeb7a051 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Diffstat (limited to 'src/quicktemplates2/qquickpopupitem.cpp')
-rw-r--r--src/quicktemplates2/qquickpopupitem.cpp438
1 files changed, 0 insertions, 438 deletions
diff --git a/src/quicktemplates2/qquickpopupitem.cpp b/src/quicktemplates2/qquickpopupitem.cpp
deleted file mode 100644
index 0381dac2..00000000
--- a/src/quicktemplates2/qquickpopupitem.cpp
+++ /dev/null
@@ -1,438 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2021 The Qt Company Ltd.
-** Contact: http://www.qt.io/licensing/
-**
-** This file is part of the Qt Quick Templates 2 module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL3$
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and The Qt Company. For licensing terms
-** and conditions see http://www.qt.io/terms-conditions. For further
-** information use the contact form at http://www.qt.io/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 3 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPLv3 included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 3 requirements
-** will be met: https://www.gnu.org/licenses/lgpl.html.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 2.0 or later as published by the Free
-** Software Foundation and appearing in the file LICENSE.GPL included in
-** the packaging of this file. Please review the following information to
-** ensure the GNU General Public License version 2.0 requirements will be
-** met: http://www.gnu.org/licenses/gpl-2.0.html.
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#include "qquickpopupitem_p_p.h"
-#include "qquickapplicationwindow_p.h"
-#include "qquickshortcutcontext_p_p.h"
-#include "qquickpage_p_p.h"
-#include "qquickcontentitem_p.h"
-#include "qquickpopup_p_p.h"
-#include "qquickdeferredexecute_p_p.h"
-
-#if QT_CONFIG(shortcut)
-# include <QtGui/private/qshortcutmap_p.h>
-#endif
-#include <QtGui/private/qguiapplication_p.h>
-
-#if QT_CONFIG(accessibility)
-#include <QtQuick/private/qquickaccessibleattached_p.h>
-#endif
-
-QT_BEGIN_NAMESPACE
-
-QQuickPopupItemPrivate::QQuickPopupItemPrivate(QQuickPopup *popup)
- : popup(popup)
-{
- isTabFence = true;
-}
-
-void QQuickPopupItemPrivate::init()
-{
- Q_Q(QQuickPopupItem);
- q->setParent(popup);
- q->setFlag(QQuickItem::ItemIsFocusScope);
- q->setAcceptedMouseButtons(Qt::AllButtons);
-#if QT_CONFIG(quicktemplates2_multitouch)
- q->setAcceptTouchEvents(true);
-#endif
-#if QT_CONFIG(cursor)
- q->setCursor(Qt::ArrowCursor);
-#endif
-
- q->connect(popup, &QQuickPopup::paletteChanged, q, &QQuickItem::paletteChanged);
- q->connect(popup, &QQuickPopup::paletteCreated, q, &QQuickItem::paletteCreated);
-
-#if QT_CONFIG(quicktemplates2_hover)
- // TODO: switch to QStyleHints::useHoverEffects in Qt 5.8
- q->setHoverEnabled(true);
- // setAcceptHoverEvents(QGuiApplication::styleHints()->useHoverEffects());
- // connect(QGuiApplication::styleHints(), &QStyleHints::useHoverEffectsChanged, this, &QQuickItem::setAcceptHoverEvents);
-#endif
-}
-
-void QQuickPopupItemPrivate::implicitWidthChanged()
-{
- QQuickPagePrivate::implicitWidthChanged();
- emit popup->implicitWidthChanged();
-}
-
-void QQuickPopupItemPrivate::implicitHeightChanged()
-{
- QQuickPagePrivate::implicitHeightChanged();
- emit popup->implicitHeightChanged();
-}
-
-void QQuickPopupItemPrivate::resolveFont()
-{
- if (QQuickApplicationWindow *window = qobject_cast<QQuickApplicationWindow *>(popup->window()))
- inheritFont(window->font());
- else
- inheritFont(QQuickTheme::font(QQuickTheme::System));
-}
-
-QQuickItem *QQuickPopupItemPrivate::getContentItem()
-{
- Q_Q(QQuickPopupItem);
- if (QQuickItem *item = QQuickPagePrivate::getContentItem())
- return item;
-
- return new QQuickContentItem(popup, q);
-}
-
-static inline QString contentItemName() { return QStringLiteral("contentItem"); }
-
-void QQuickPopupItemPrivate::cancelContentItem()
-{
- quickCancelDeferred(popup, contentItemName());
-}
-
-void QQuickPopupItemPrivate::executeContentItem(bool complete)
-{
- if (contentItem.wasExecuted())
- return;
-
- if (!contentItem || complete)
- quickBeginDeferred(popup, contentItemName(), contentItem);
- if (complete)
- quickCompleteDeferred(popup, contentItemName(), contentItem);
-}
-
-static inline QString backgroundName() { return QStringLiteral("background"); }
-
-void QQuickPopupItemPrivate::cancelBackground()
-{
- quickCancelDeferred(popup, backgroundName());
-}
-
-void QQuickPopupItemPrivate::executeBackground(bool complete)
-{
- if (background.wasExecuted())
- return;
-
- if (!background || complete)
- quickBeginDeferred(popup, backgroundName(), background);
- if (complete)
- quickCompleteDeferred(popup, backgroundName(), background);
-}
-
-QQuickPopupItem::QQuickPopupItem(QQuickPopup *popup)
- : QQuickPage(*(new QQuickPopupItemPrivate(popup)), nullptr)
-{
- Q_D(QQuickPopupItem);
- d->init();
-}
-
-QQuickPopupItem::QQuickPopupItem(QQuickPopupItemPrivate &dd) :
- QQuickPage(dd, nullptr)
-{
- Q_D(QQuickPopupItem);
- d->init();
-}
-
-void QQuickPopupItem::grabShortcut()
-{
-#if QT_CONFIG(shortcut)
- Q_D(QQuickPopupItem);
- QGuiApplicationPrivate *pApp = QGuiApplicationPrivate::instance();
- if (!d->backId)
- d->backId = pApp->shortcutMap.addShortcut(this, Qt::Key_Back, Qt::WindowShortcut, QQuickShortcutContext::matcher);
- if (!d->escapeId)
- d->escapeId = pApp->shortcutMap.addShortcut(this, Qt::Key_Escape, Qt::WindowShortcut, QQuickShortcutContext::matcher);
-#endif
-}
-
-void QQuickPopupItem::ungrabShortcut()
-{
-#if QT_CONFIG(shortcut)
- Q_D(QQuickPopupItem);
- QGuiApplicationPrivate *pApp = QGuiApplicationPrivate::instance();
- if (d->backId) {
- pApp->shortcutMap.removeShortcut(d->backId, this);
- d->backId = 0;
- }
- if (d->escapeId) {
- pApp->shortcutMap.removeShortcut(d->escapeId, this);
- d->escapeId = 0;
- }
-#endif
-}
-
-QQuickPalette *QQuickPopupItemPrivate::palette() const
-{
- return QQuickPopupPrivate::get(popup)->palette();
-}
-
-void QQuickPopupItemPrivate::setPalette(QQuickPalette *p)
-{
- QQuickPopupPrivate::get(popup)->setPalette(p);
-}
-
-void QQuickPopupItemPrivate::resetPalette()
-{
- QQuickPopupPrivate::get(popup)->resetPalette();
-}
-
-QPalette QQuickPopupItemPrivate::defaultPalette() const
-{
- return QQuickPopupPrivate::get(popup)->defaultPalette();
-}
-
-bool QQuickPopupItemPrivate::providesPalette() const
-{
- return QQuickPopupPrivate::get(popup)->providesPalette();
-}
-
-QPalette QQuickPopupItemPrivate::parentPalette() const
-{
- return QQuickPopupPrivate::get(popup)->parentPalette();
-}
-
-void QQuickPopupItem::updatePolish()
-{
- Q_D(QQuickPopupItem);
- return QQuickPopupPrivate::get(d->popup)->reposition();
-}
-
-bool QQuickPopupItem::event(QEvent *event)
-{
-#if QT_CONFIG(shortcut)
- Q_D(QQuickPopupItem);
- if (event->type() == QEvent::Shortcut) {
- QShortcutEvent *se = static_cast<QShortcutEvent *>(event);
- if (se->shortcutId() == d->escapeId || se->shortcutId() == d->backId) {
- QQuickPopupPrivate *p = QQuickPopupPrivate::get(d->popup);
- if (p->interactive) {
- p->closeOrReject();
- return true;
- }
- }
- }
-#endif
- return QQuickItem::event(event);
-}
-
-bool QQuickPopupItem::childMouseEventFilter(QQuickItem *child, QEvent *event)
-{
- Q_D(QQuickPopupItem);
- return d->popup->childMouseEventFilter(child, event);
-}
-
-void QQuickPopupItem::focusInEvent(QFocusEvent *event)
-{
- Q_D(QQuickPopupItem);
- d->popup->focusInEvent(event);
-}
-
-void QQuickPopupItem::focusOutEvent(QFocusEvent *event)
-{
- Q_D(QQuickPopupItem);
- d->popup->focusOutEvent(event);
-}
-
-void QQuickPopupItem::keyPressEvent(QKeyEvent *event)
-{
- Q_D(QQuickPopupItem);
- d->popup->keyPressEvent(event);
-}
-
-void QQuickPopupItem::keyReleaseEvent(QKeyEvent *event)
-{
- Q_D(QQuickPopupItem);
- d->popup->keyReleaseEvent(event);
-}
-
-void QQuickPopupItem::mousePressEvent(QMouseEvent *event)
-{
- Q_D(QQuickPopupItem);
- d->popup->mousePressEvent(event);
-}
-
-void QQuickPopupItem::mouseMoveEvent(QMouseEvent *event)
-{
- Q_D(QQuickPopupItem);
- d->popup->mouseMoveEvent(event);
-}
-
-void QQuickPopupItem::mouseReleaseEvent(QMouseEvent *event)
-{
- Q_D(QQuickPopupItem);
- d->popup->mouseReleaseEvent(event);
-}
-
-void QQuickPopupItem::mouseDoubleClickEvent(QMouseEvent *event)
-{
- Q_D(QQuickPopupItem);
- d->popup->mouseDoubleClickEvent(event);
-}
-
-void QQuickPopupItem::mouseUngrabEvent()
-{
- Q_D(QQuickPopupItem);
- d->popup->mouseUngrabEvent();
-}
-
-#if QT_CONFIG(quicktemplates2_multitouch)
-void QQuickPopupItem::touchEvent(QTouchEvent *event)
-{
- Q_D(QQuickPopupItem);
- d->popup->touchEvent(event);
-}
-
-void QQuickPopupItem::touchUngrabEvent()
-{
- Q_D(QQuickPopupItem);
- d->popup->touchUngrabEvent();
-}
-#endif
-
-#if QT_CONFIG(wheelevent)
-void QQuickPopupItem::wheelEvent(QWheelEvent *event)
-{
- Q_D(QQuickPopupItem);
- d->popup->wheelEvent(event);
-}
-#endif
-
-void QQuickPopupItem::contentItemChange(QQuickItem *newItem, QQuickItem *oldItem)
-{
- Q_D(QQuickPopupItem);
- QQuickPage::contentItemChange(newItem, oldItem);
- d->popup->contentItemChange(newItem, oldItem);
-}
-
-void QQuickPopupItem::contentSizeChange(const QSizeF &newSize, const QSizeF &oldSize)
-{
- Q_D(QQuickPopupItem);
- QQuickPage::contentSizeChange(newSize, oldSize);
- d->popup->contentSizeChange(newSize, oldSize);
-}
-
-void QQuickPopupItem::fontChange(const QFont &newFont, const QFont &oldFont)
-{
- Q_D(QQuickPopupItem);
- QQuickPage::fontChange(newFont, oldFont);
- d->popup->fontChange(newFont, oldFont);
-}
-
-void QQuickPopupItem::geometryChange(const QRectF &newGeometry, const QRectF &oldGeometry)
-{
- Q_D(QQuickPopupItem);
- QQuickPage::geometryChange(newGeometry, oldGeometry);
- d->popup->geometryChange(newGeometry, oldGeometry);
-}
-
-void QQuickPopupItem::localeChange(const QLocale &newLocale, const QLocale &oldLocale)
-{
- Q_D(QQuickPopupItem);
- QQuickPage::localeChange(newLocale, oldLocale);
- d->popup->localeChange(newLocale, oldLocale);
-}
-
-void QQuickPopupItem::mirrorChange()
-{
- Q_D(QQuickPopupItem);
- emit d->popup->mirroredChanged();
-}
-
-void QQuickPopupItem::itemChange(ItemChange change, const ItemChangeData &data)
-{
- Q_D(QQuickPopupItem);
- QQuickPage::itemChange(change, data);
- d->popup->itemChange(change, data);
-}
-
-void QQuickPopupItem::paddingChange(const QMarginsF &newPadding, const QMarginsF &oldPadding)
-{
- Q_D(QQuickPopupItem);
- QQuickPage::paddingChange(newPadding, oldPadding);
- d->popup->paddingChange(newPadding, oldPadding);
-}
-
-void QQuickPopupItem::enabledChange()
-{
- Q_D(QQuickPopupItem);
- // Just having QQuickPopup connect our QQuickItem::enabledChanged() signal
- // to its enabledChanged() signal is enough for the enabled property to work,
- // but we must also ensure that its paletteChanged() signal is emitted
- // so that bindings to palette are re-evaluated, because QQuickControl::palette()
- // returns a different palette depending on whether or not the control is enabled.
- // To save a connection, we also emit enabledChanged here.
- emit d->popup->enabledChanged();
-}
-
-QFont QQuickPopupItem::defaultFont() const
-{
- Q_D(const QQuickPopupItem);
- return d->popup->defaultFont();
-}
-
-#if QT_CONFIG(accessibility)
-QAccessible::Role QQuickPopupItem::accessibleRole() const
-{
- Q_D(const QQuickPopupItem);
- return d->popup->accessibleRole();
-}
-
-void QQuickPopupItem::accessibilityActiveChanged(bool active)
-{
- Q_D(const QQuickPopupItem);
- // Can't just use d->popup->accessibleName() here, because that refers to the accessible
- // name of us, the popup item, which is not what we want.
- const QQuickAccessibleAttached *popupAccessibleAttached = QQuickControlPrivate::accessibleAttached(d->popup);
- const QString oldPopupName = popupAccessibleAttached ? popupAccessibleAttached->name() : QString();
- const bool wasNameExplicitlySetOnPopup = popupAccessibleAttached && popupAccessibleAttached->wasNameExplicitlySet();
-
- QQuickPage::accessibilityActiveChanged(active);
-
- QQuickAccessibleAttached *accessibleAttached = QQuickControlPrivate::accessibleAttached(this);
- const QString ourName = accessibleAttached ? accessibleAttached->name() : QString();
- if (wasNameExplicitlySetOnPopup && accessibleAttached && ourName != oldPopupName) {
- // The user set Accessible.name on the Popup. Since the Popup and its popup item
- // have different accessible attached properties, the popup item doesn't know that
- // a name was set on the Popup by the user, and that it should use that, rather than
- // whatever QQuickPage sets. That's why we need to do it here.
- // To avoid it being overridden by the call to accessibilityActiveChanged() below,
- // we set it explicitly. It's safe to do this as the popup item is an internal implementation detail.
- accessibleAttached->setName(oldPopupName);
- }
-
- // This allows the different popup types to set a name on their popup item accordingly.
- // For example: Dialog uses its title and ToolTip uses its text.
- d->popup->accessibilityActiveChanged(active);
-}
-#endif
-
-QT_END_NAMESPACE