Remove private classes in QEvent-derived classes.

QEventPrivate doesn't exist, so these classes were technically abusing
the d pointer.

Move the contents of the private classes into the main event classes.

Change-Id: If2e894c1fa05f468221a0b43f3ebdf90769298eb
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
This commit is contained in:
Thiago Macieira 2012-04-11 17:07:28 -03:00 committed by Qt by Nokia
parent 275945f144
commit a3f90fd44f
3 changed files with 30 additions and 150 deletions

View File

@ -2787,19 +2787,14 @@ QShowEvent::~QShowEvent()
\note This class is currently supported for Mac OS X only. \note This class is currently supported for Mac OS X only.
*/ */
QFileOpenEventPrivate::~QFileOpenEventPrivate()
{
}
/*! /*!
\internal \internal
Constructs a file open event for the given \a file. Constructs a file open event for the given \a file.
*/ */
QFileOpenEvent::QFileOpenEvent(const QString &file) QFileOpenEvent::QFileOpenEvent(const QString &file)
: QEvent(FileOpen), f(file) : QEvent(FileOpen), f(file), m_url(QUrl::fromLocalFile(file))
{ {
d = reinterpret_cast<QEventPrivate *>(new QFileOpenEventPrivate(QUrl::fromLocalFile(file)));
} }
/*! /*!
@ -2808,10 +2803,8 @@ QFileOpenEvent::QFileOpenEvent(const QString &file)
Constructs a file open event for the given \a url. Constructs a file open event for the given \a url.
*/ */
QFileOpenEvent::QFileOpenEvent(const QUrl &url) QFileOpenEvent::QFileOpenEvent(const QUrl &url)
: QEvent(FileOpen) : QEvent(FileOpen), f(url.toLocalFile()), m_url(url)
{ {
d = reinterpret_cast<QEventPrivate *>(new QFileOpenEventPrivate(url));
f = url.toLocalFile();
} }
@ -2819,7 +2812,6 @@ QFileOpenEvent::QFileOpenEvent(const QUrl &url)
*/ */
QFileOpenEvent::~QFileOpenEvent() QFileOpenEvent::~QFileOpenEvent()
{ {
delete reinterpret_cast<QFileOpenEventPrivate *>(d);
} }
/*! /*!
@ -2835,10 +2827,6 @@ QFileOpenEvent::~QFileOpenEvent()
\since 4.6 \since 4.6
*/ */
QUrl QFileOpenEvent::url() const
{
return reinterpret_cast<const QFileOpenEventPrivate *>(d)->url;
}
/*! /*!
\fn bool QFileOpenEvent::openFile(QFile &file, QIODevice::OpenMode flags) const \fn bool QFileOpenEvent::openFile(QFile &file, QIODevice::OpenMode flags) const
@ -4065,10 +4053,8 @@ void QTouchEvent::TouchPoint::setFlags(InfoFlags flags)
The \a startPos is the position of a touch or mouse event that started the scrolling. The \a startPos is the position of a touch or mouse event that started the scrolling.
*/ */
QScrollPrepareEvent::QScrollPrepareEvent(const QPointF &startPos) QScrollPrepareEvent::QScrollPrepareEvent(const QPointF &startPos)
: QEvent(QEvent::ScrollPrepare) : QEvent(QEvent::ScrollPrepare), m_target(0), m_startPos(startPos)
{ {
d = reinterpret_cast<QEventPrivate *>(new QScrollPrepareEventPrivate());
d_func()->startPos = startPos;
} }
/*! /*!
@ -4076,7 +4062,6 @@ QScrollPrepareEvent::QScrollPrepareEvent(const QPointF &startPos)
*/ */
QScrollPrepareEvent::~QScrollPrepareEvent() QScrollPrepareEvent::~QScrollPrepareEvent()
{ {
delete reinterpret_cast<QScrollPrepareEventPrivate *>(d);
} }
/*! /*!
@ -4084,7 +4069,7 @@ QScrollPrepareEvent::~QScrollPrepareEvent()
*/ */
QPointF QScrollPrepareEvent::startPos() const QPointF QScrollPrepareEvent::startPos() const
{ {
return d_func()->startPos; return m_startPos;
} }
/*! /*!
@ -4094,7 +4079,7 @@ QPointF QScrollPrepareEvent::startPos() const
*/ */
QSizeF QScrollPrepareEvent::viewportSize() const QSizeF QScrollPrepareEvent::viewportSize() const
{ {
return d_func()->viewportSize; return m_viewportSize;
} }
/*! /*!
@ -4102,7 +4087,7 @@ QSizeF QScrollPrepareEvent::viewportSize() const
*/ */
QRectF QScrollPrepareEvent::contentPosRange() const QRectF QScrollPrepareEvent::contentPosRange() const
{ {
return d_func()->contentPosRange; return m_contentPosRange;
} }
/*! /*!
@ -4110,7 +4095,7 @@ QRectF QScrollPrepareEvent::contentPosRange() const
*/ */
QPointF QScrollPrepareEvent::contentPos() const QPointF QScrollPrepareEvent::contentPos() const
{ {
return d_func()->contentPos; return m_contentPos;
} }
@ -4121,7 +4106,7 @@ QPointF QScrollPrepareEvent::contentPos() const
*/ */
void QScrollPrepareEvent::setViewportSize(const QSizeF &size) void QScrollPrepareEvent::setViewportSize(const QSizeF &size)
{ {
d_func()->viewportSize = size; m_viewportSize = size;
} }
/*! /*!
@ -4131,7 +4116,7 @@ void QScrollPrepareEvent::setViewportSize(const QSizeF &size)
*/ */
void QScrollPrepareEvent::setContentPosRange(const QRectF &rect) void QScrollPrepareEvent::setContentPosRange(const QRectF &rect)
{ {
d_func()->contentPosRange = rect; m_contentPosRange = rect;
} }
/*! /*!
@ -4141,26 +4126,10 @@ void QScrollPrepareEvent::setContentPosRange(const QRectF &rect)
*/ */
void QScrollPrepareEvent::setContentPos(const QPointF &pos) void QScrollPrepareEvent::setContentPos(const QPointF &pos)
{ {
d_func()->contentPos = pos; m_contentPos = pos;
} }
/*!
\internal
*/
QScrollPrepareEventPrivate *QScrollPrepareEvent::d_func()
{
return reinterpret_cast<QScrollPrepareEventPrivate *>(d);
}
/*!
\internal
*/
const QScrollPrepareEventPrivate *QScrollPrepareEvent::d_func() const
{
return reinterpret_cast<const QScrollPrepareEventPrivate *>(d);
}
/*! /*!
\class QScrollEvent \class QScrollEvent
\since 4.8 \since 4.8
@ -4198,12 +4167,8 @@ const QScrollPrepareEventPrivate *QScrollPrepareEvent::d_func() const
event is the first one, the last one or some event in between. event is the first one, the last one or some event in between.
*/ */
QScrollEvent::QScrollEvent(const QPointF &contentPos, const QPointF &overshootDistance, ScrollState scrollState) QScrollEvent::QScrollEvent(const QPointF &contentPos, const QPointF &overshootDistance, ScrollState scrollState)
: QEvent(QEvent::Scroll) : QEvent(QEvent::Scroll), m_contentPos(contentPos), m_overshoot(overshootDistance), m_state(scrollState)
{ {
d = reinterpret_cast<QEventPrivate *>(new QScrollEventPrivate());
d_func()->contentPos = contentPos;
d_func()->overshoot= overshootDistance;
d_func()->state = scrollState;
} }
/*! /*!
@ -4211,7 +4176,6 @@ QScrollEvent::QScrollEvent(const QPointF &contentPos, const QPointF &overshootDi
*/ */
QScrollEvent::~QScrollEvent() QScrollEvent::~QScrollEvent()
{ {
delete reinterpret_cast<QScrollEventPrivate *>(d);
} }
/*! /*!
@ -4219,7 +4183,7 @@ QScrollEvent::~QScrollEvent()
*/ */
QPointF QScrollEvent::contentPos() const QPointF QScrollEvent::contentPos() const
{ {
return d_func()->contentPos; return m_contentPos;
} }
/*! /*!
@ -4230,7 +4194,7 @@ QPointF QScrollEvent::contentPos() const
*/ */
QPointF QScrollEvent::overshootDistance() const QPointF QScrollEvent::overshootDistance() const
{ {
return d_func()->overshoot; return m_overshoot;
} }
/*! /*!
@ -4243,23 +4207,7 @@ QPointF QScrollEvent::overshootDistance() const
*/ */
QScrollEvent::ScrollState QScrollEvent::scrollState() const QScrollEvent::ScrollState QScrollEvent::scrollState() const
{ {
return d_func()->state; return m_state;
}
/*!
\internal
*/
QScrollEventPrivate *QScrollEvent::d_func()
{
return reinterpret_cast<QScrollEventPrivate *>(d);
}
/*!
\internal
*/
const QScrollEventPrivate *QScrollEvent::d_func() const
{
return reinterpret_cast<const QScrollEventPrivate *>(d);
} }
/*! /*!
@ -4267,11 +4215,8 @@ const QScrollEventPrivate *QScrollEvent::d_func() const
\a orientation is the new orientation of the screen. \a orientation is the new orientation of the screen.
*/ */
QScreenOrientationChangeEvent::QScreenOrientationChangeEvent(QScreen *screen, Qt::ScreenOrientation screenOrientation) QScreenOrientationChangeEvent::QScreenOrientationChangeEvent(QScreen *screen, Qt::ScreenOrientation screenOrientation)
: QEvent(QEvent::OrientationChange) : QEvent(QEvent::OrientationChange), m_screen(screen), m_orientation(screenOrientation)
{ {
d = reinterpret_cast<QEventPrivate *>(new QScreenOrientationChangeEventPrivate());
d_func()->screen = screen;
d_func()->orientation = screenOrientation;
} }
/*! /*!
@ -4279,7 +4224,6 @@ QScreenOrientationChangeEvent::QScreenOrientationChangeEvent(QScreen *screen, Qt
*/ */
QScreenOrientationChangeEvent::~QScreenOrientationChangeEvent() QScreenOrientationChangeEvent::~QScreenOrientationChangeEvent()
{ {
delete reinterpret_cast<QScrollEventPrivate *>(d);
} }
/*! /*!
@ -4287,7 +4231,7 @@ QScreenOrientationChangeEvent::~QScreenOrientationChangeEvent()
*/ */
QScreen *QScreenOrientationChangeEvent::screen() const QScreen *QScreenOrientationChangeEvent::screen() const
{ {
return d_func()->screen; return m_screen;
} }
/*! /*!
@ -4295,23 +4239,7 @@ QScreen *QScreenOrientationChangeEvent::screen() const
*/ */
Qt::ScreenOrientation QScreenOrientationChangeEvent::orientation() const Qt::ScreenOrientation QScreenOrientationChangeEvent::orientation() const
{ {
return d_func()->orientation; return m_orientation;
}
/*!
\internal
*/
QScreenOrientationChangeEventPrivate *QScreenOrientationChangeEvent::d_func()
{
return reinterpret_cast<QScreenOrientationChangeEventPrivate *>(d);
}
/*!
\internal
*/
const QScreenOrientationChangeEventPrivate *QScreenOrientationChangeEvent::d_func() const
{
return reinterpret_cast<const QScreenOrientationChangeEventPrivate *>(d);
} }
QT_END_NAMESPACE QT_END_NAMESPACE

View File

@ -53,6 +53,7 @@
#include <QtCore/qmap.h> #include <QtCore/qmap.h>
#include <QtCore/qvector.h> #include <QtCore/qvector.h>
#include <QtCore/qset.h> #include <QtCore/qset.h>
#include <QtCore/qurl.h>
#include <QtCore/qfile.h> #include <QtCore/qfile.h>
#include <QtGui/qvector2d.h> #include <QtGui/qvector2d.h>
#include <QtGui/qtouchdevice.h> #include <QtGui/qtouchdevice.h>
@ -646,10 +647,11 @@ public:
~QFileOpenEvent(); ~QFileOpenEvent();
inline QString file() const { return f; } inline QString file() const { return f; }
QUrl url() const; QUrl url() const { return m_url; }
bool openFile(QFile &file, QIODevice::OpenMode flags) const; bool openFile(QFile &file, QIODevice::OpenMode flags) const;
private: private:
QString f; QString f;
QUrl m_url;
}; };
#ifndef QT_NO_TOOLBAR #ifndef QT_NO_TOOLBAR
@ -847,7 +849,6 @@ protected:
Q_DECLARE_TYPEINFO(QTouchEvent::TouchPoint, Q_MOVABLE_TYPE); Q_DECLARE_TYPEINFO(QTouchEvent::TouchPoint, Q_MOVABLE_TYPE);
Q_DECLARE_OPERATORS_FOR_FLAGS(QTouchEvent::TouchPoint::InfoFlags) Q_DECLARE_OPERATORS_FOR_FLAGS(QTouchEvent::TouchPoint::InfoFlags)
class QScrollPrepareEventPrivate;
class Q_GUI_EXPORT QScrollPrepareEvent : public QEvent class Q_GUI_EXPORT QScrollPrepareEvent : public QEvent
{ {
public: public:
@ -865,12 +866,14 @@ public:
void setContentPos(const QPointF &pos); void setContentPos(const QPointF &pos);
private: private:
QScrollPrepareEventPrivate *d_func(); QObject* m_target;
const QScrollPrepareEventPrivate *d_func() const; QPointF m_startPos;
QSizeF m_viewportSize;
QRectF m_contentPosRange;
QPointF m_contentPos;
}; };
class QScrollEventPrivate;
class Q_GUI_EXPORT QScrollEvent : public QEvent class Q_GUI_EXPORT QScrollEvent : public QEvent
{ {
public: public:
@ -889,11 +892,11 @@ public:
ScrollState scrollState() const; ScrollState scrollState() const;
private: private:
QScrollEventPrivate *d_func(); QPointF m_contentPos;
const QScrollEventPrivate *d_func() const; QPointF m_overshoot;
QScrollEvent::ScrollState m_state;
}; };
class QScreenOrientationChangeEventPrivate;
class Q_GUI_EXPORT QScreenOrientationChangeEvent : public QEvent class Q_GUI_EXPORT QScreenOrientationChangeEvent : public QEvent
{ {
public: public:
@ -904,8 +907,8 @@ public:
Qt::ScreenOrientation orientation() const; Qt::ScreenOrientation orientation() const;
private: private:
QScreenOrientationChangeEventPrivate *d_func(); QScreen *m_screen;
const QScreenOrientationChangeEventPrivate *d_func() const; Qt::ScreenOrientation m_orientation;
}; };
QT_END_NAMESPACE QT_END_NAMESPACE

View File

@ -92,57 +92,6 @@ public:
QVector<QPointF> rawScreenPositions; QVector<QPointF> rawScreenPositions;
}; };
class QFileOpenEventPrivate
{
public:
inline QFileOpenEventPrivate(const QUrl &url)
: url(url)
{
}
~QFileOpenEventPrivate();
QUrl url;
};
class QScrollPrepareEventPrivate
{
public:
inline QScrollPrepareEventPrivate()
: target(0)
{
}
QObject* target;
QPointF startPos;
QSizeF viewportSize;
QRectF contentPosRange;
QPointF contentPos;
};
class QScrollEventPrivate
{
public:
inline QScrollEventPrivate()
{
}
QPointF contentPos;
QPointF overshoot;
QScrollEvent::ScrollState state;
};
class QScreenOrientationChangeEventPrivate
{
public:
inline QScreenOrientationChangeEventPrivate()
{
}
QScreen *screen;
Qt::ScreenOrientation orientation;
};
QT_END_NAMESPACE QT_END_NAMESPACE
#endif // QEVENT_P_H #endif // QEVENT_P_H