OSDN Git Service

fix qPRCreate() const correctness
authorIvailo Monev <xakepa10@laimg.moc>
Wed, 25 Mar 2020 16:43:44 +0000 (16:43 +0000)
committerIvailo Monev <xakepa10@laimg.moc>
Wed, 25 Mar 2020 16:43:44 +0000 (16:43 +0000)
Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
src/gui/kernel/qapplication_x11.cpp
src/gui/kernel/qwidget_x11.cpp

index d14418e..67a6850 100644 (file)
@@ -1918,19 +1918,19 @@ Qt::KeyboardModifiers QApplication::queryKeyboardModifiers()
 
 static QWidgetMapper *wPRmapper = 0;                // alternative widget mapper
 
-void qPRCreate(const QWidget *widget, Window oldwin)
+void qPRCreate(QWidget *widget, Window oldwin)
 {                                                // QWidget::reparent mechanism
     if (!wPRmapper)
         wPRmapper = new QWidgetMapper;
 
-    QETWidget *w = static_cast<QETWidget *>(const_cast<QWidget *>(widget));
+    QETWidget *w = static_cast<QETWidget *>(widget);
     wPRmapper->insert((int)oldwin, w);        // add old window to mapper
     w->setAttribute(Qt::WA_WState_Reparented);        // set reparented flag
 }
 
 void qPRCleanup(QWidget *widget)
 {
-    QETWidget *etw = static_cast<QETWidget *>(const_cast<QWidget *>(widget));
+    QETWidget *etw = static_cast<QETWidget *>(widget);
     if (!(wPRmapper && widget->testAttribute(Qt::WA_WState_Reparented)))
         return;                                        // not a reparented widget
     QWidgetMapper::iterator it = wPRmapper->begin();
index b6b3bee..3359e8e 100644 (file)
@@ -975,6 +975,9 @@ bool QWidgetPrivate::isBackgroundInherited() const
     return true;
 }
 
+extern void qPRCleanup(QWidget *widget); // from qapplication_x11.cpp
+extern void qPRCreate(QWidget *, Window);
+
 void QWidget::destroy(bool destroyWindow, bool destroySubWindows)
 {
     Q_D(QWidget);
@@ -1025,7 +1028,6 @@ void QWidget::destroy(bool destroyWindow, bool destroySubWindows)
         }
         d->setWinId(0);
 
-        extern void qPRCleanup(QWidget *widget); // from qapplication_x11.cpp
         if (testAttribute(Qt::WA_WState_Reparented))
             qPRCleanup(this);
     }
@@ -1049,7 +1051,6 @@ void QWidgetPrivate::setParent_sys(QWidget *parent, Qt::WindowFlags f)
     bool wasCreated = q->testAttribute(Qt::WA_WState_Created);
     if (q->isVisible() && q->parentWidget() && parent != q->parentWidget())
         q->parentWidget()->d_func()->invalidateBuffer(effectiveRectFor(q->geometry()));
-    extern void qPRCreate(const QWidget *, Window);
 #ifndef QT_NO_CURSOR
     QCursor oldcurs;
 #endif