Deprecate QMacNativeWidget and QMacCocoaViewContainer
Change-Id: I489870f97dcf7b54a4427ead3a9e627dd938f4ca Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
This commit is contained in:
parent
eaada70d4e
commit
d6fe9c2160
@ -1306,6 +1306,14 @@
|
||||
# define QT_WARNING_DISABLE_DEPRECATED
|
||||
#endif
|
||||
|
||||
#ifndef QT_IGNORE_DEPRECATIONS
|
||||
#define QT_IGNORE_DEPRECATIONS(statement) \
|
||||
QT_WARNING_PUSH \
|
||||
QT_WARNING_DISABLE_DEPRECATED \
|
||||
statement \
|
||||
QT_WARNING_POP
|
||||
#endif
|
||||
|
||||
/*
|
||||
Proper for-scoping in MIPSpro CC
|
||||
*/
|
||||
|
@ -47,8 +47,10 @@ Q_FORWARD_DECLARE_OBJC_CLASS(NSView);
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
#if QT_DEPRECATED_SINCE(5, 15)
|
||||
class QMacCocoaViewContainerPrivate;
|
||||
class Q_WIDGETS_EXPORT QMacCocoaViewContainer : public QWidget
|
||||
class QT_DEPRECATED_X("Use QWindow::fromWinId and QWidget::createWindowContainer instead")
|
||||
Q_WIDGETS_EXPORT QMacCocoaViewContainer : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
@ -61,6 +63,7 @@ public:
|
||||
private:
|
||||
Q_DECLARE_PRIVATE(QMacCocoaViewContainer)
|
||||
};
|
||||
#endif
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
|
@ -114,7 +114,7 @@ QT_BEGIN_NAMESPACE
|
||||
|
||||
class QMacCocoaViewContainerPrivate : public QWidgetPrivate
|
||||
{
|
||||
Q_DECLARE_PUBLIC(QMacCocoaViewContainer)
|
||||
QT_IGNORE_DEPRECATIONS(Q_DECLARE_PUBLIC(QMacCocoaViewContainer))
|
||||
public:
|
||||
NSView *nsview;
|
||||
QMacCocoaViewContainerPrivate();
|
||||
|
@ -47,7 +47,9 @@ Q_FORWARD_DECLARE_OBJC_CLASS(NSView);
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
class Q_WIDGETS_EXPORT QMacNativeWidget : public QWidget
|
||||
#if QT_DEPRECATED_SINCE(5, 15)
|
||||
class QT_DEPRECATED_X("Use QWidget::winId instead")
|
||||
Q_WIDGETS_EXPORT QMacNativeWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
@ -60,6 +62,7 @@ public:
|
||||
protected:
|
||||
bool event(QEvent *ev) override;
|
||||
};
|
||||
#endif
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
|
@ -3549,7 +3549,7 @@ void QMenu::actionEvent(QActionEvent *e)
|
||||
if (QWidget *widget = d->widgetItems.value(wa)) {
|
||||
#ifdef Q_OS_MACOS
|
||||
QWidget *p = widget->parentWidget();
|
||||
if (p != this && qobject_cast<QMacNativeWidget *>(p)) {
|
||||
if (p != this && QT_IGNORE_DEPRECATIONS(qobject_cast<QMacNativeWidget *>(p))) {
|
||||
// This widget was reparented into a native Mac view
|
||||
// (see QMenuPrivate::moveWidgetToPlatformItem).
|
||||
// Reset the parent and delete the native widget.
|
||||
|
@ -125,7 +125,7 @@ void QMenu::setAsDockMenu()
|
||||
|
||||
void QMenuPrivate::moveWidgetToPlatformItem(QWidget *widget, QPlatformMenuItem* item)
|
||||
{
|
||||
QMacNativeWidget *container = new QMacNativeWidget;
|
||||
auto *container = new QT_IGNORE_DEPRECATIONS(QMacNativeWidget);
|
||||
QObject::connect(platformMenu, SIGNAL(destroyed()), container, SLOT(deleteLater()));
|
||||
container->resize(widget->sizeHint());
|
||||
widget->setParent(container);
|
||||
|
Loading…
x
Reference in New Issue
Block a user